
void fts3Appendf(int *pRc,char **pz,char *zFormat,...)

{
  bool bVar1;
  JsonParse *pJVar2;
  undefined4 uVar3;
  int iVar4;
  undefined4 uVar5;
  int iVar6;
  u32 uVar7;
  sqlite3_value ***pppsVar8;
  JsonNode *pJVar9;
  char *pcVar10;
  int iVar11;
  u32 uVar12;
  byte bVar14;
  u32 *puVar13;
  sqlite3_context *pCtx;
  JsonParse *pJVar15;
  sqlite3_value ***pppsVar16;
  sqlite3_value **pApnd;
  sqlite3_value **argv;
  u32 *in_a3;
  u32 uVar17;
  char cVar18;
  int *piVar19;
  JsonParse *pJVar20;
  JsonParse *pJVar21;
  JsonParse *pJVar22;
  u32 *unaff_s1;
  int *piVar23;
  undefined4 *puVar24;
  JsonParse *unaff_s2;
  uint uVar25;
  char **unaff_s3;
  int in_t9;
  code *pcVar26;
  code *pcVar27;
  double dVar28;
  u32 *puStackX_c;
  sqlite3_value ***pppsStack_128;
  sqlite3_context *psStack_124;
  int iStack_120;
  undefined4 *puStack_11c;
  JsonParse *pJStack_118;
  code *pcStack_114;
  code *pcStack_100;
  sqlite3_value ***pppsStack_f8;
  sqlite3_value ***pppsStack_f4;
  JsonParse *pJStack_ec;
  JsonParse *pJStack_e8;
  code *pcStack_e4;
  sqlite3_value **ppsStack_d8;
  u32 *puStack_d4;
  code *pcStack_d0;
  JsonParse JStack_c8;
  undefined4 uStack_a8;
  undefined4 uStack_a4;
  undefined1 uStack_a0;
  int iStack_9c;
  JsonParse *pJStack_98;
  int *piStack_94;
  int iStack_90;
  JsonParse *pJStack_8c;
  JsonParse *pJStack_88;
  code *pcStack_84;
  code *pcStack_70;
  u32 uStack_64;
  u32 uStack_60;
  JsonNode *pJStack_5c;
  int *piStack_58;
  u32 *puStack_54;
  JsonParse *pJStack_50;
  char **ppcStack_4c;
  va_list ap;
  
  piVar19 = *(int **)(in_t9 + 0xc2b00);
  iVar11 = *piVar19;
  pJVar21 = (JsonParse *)pRc;
  pJVar22 = (JsonParse *)pz;
  puStack_54 = unaff_s1;
  ppcStack_4c = unaff_s3;
  puStackX_c = in_a3;
  if (*pRc == 0) {
    pJVar22 = (JsonParse *)&puStackX_c;
    pJVar2 = (JsonParse *)sqlite3_vmprintf(zFormat,pJVar22);
    if (pJVar2 == (JsonParse *)0x0) {
LAB_00099014:
      unaff_s2 = (JsonParse *)0x0;
      *pRc = 7;
      pJVar21 = (JsonParse *)*pz;
    }
    else {
      pJVar21 = (JsonParse *)*pz;
      unaff_s2 = pJVar2;
      if (pJVar21 != (JsonParse *)0x0) {
        zFormat = (char *)pJVar2;
        unaff_s2 = (JsonParse *)sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624));
        pJVar22 = pJVar21;
        (**(code **)(in_t9 + 0xc26f4))(pJVar2);
        if (unaff_s2 == (JsonParse *)0x0) goto LAB_00099014;
        pJVar21 = (JsonParse *)*pz;
      }
    }
    (**(code **)(in_t9 + 0xc26f4))();
    *pz = (char *)unaff_s2;
    puStack_54 = (u32 *)pRc;
    ppcStack_4c = pz;
  }
  if (iVar11 == *piVar19) {
    return;
  }
  pcVar26 = *(code **)(in_t9 + 0xc2ae4);
  (*pcVar26)();
  pcStack_70 = pcVar26 + 0xca57c;
  piVar23 = *(int **)(pcVar26 + 0xc29f8);
  uStack_64 = 0;
  pJStack_5c = (JsonNode *)*piVar23;
  piStack_58 = piVar19;
  pJStack_50 = unaff_s2;
  uVar3 = (**(code **)(pcVar26 + 0xc2694))();
  iVar11 = (**(code **)(pcStack_70 + -0x7f9c))(((JsonParse *)zFormat)->nNode);
  iVar4 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nNode);
  pJVar2 = pJVar21;
  if (pJVar22 == (JsonParse *)0x2) {
    uVar5 = (**(code **)(pcStack_70 + -0x7ed0))(pJVar21);
    in_a3 = &uStack_60;
    uStack_60 = 0;
    (**(code **)(pcStack_70 + -0x7d60))(uVar5,0x3ec,0xffffffff);
    if (uStack_60 == 0) {
      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x7434);
      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);
    }
    else {
      iVar6 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nAlloc);
      if ((iVar11 != 0) && (iVar6 == 4)) {
        puVar13 = (u32 *)(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc);
        uStack_64 = *puVar13;
        uVar17 = (*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))
                           (uVar3,iVar11,iVar4 + 1,uStack_64);
        if (uStack_64 == uVar17) {
          (**(code **)(pcStack_70 + -0x7e40))
                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff);
        }
        goto LAB_000990fc;
      }
      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x744c);
      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);
    }
  }
  else {
    if (iVar11 == 0) {
LAB_000990f4:
      iVar4 = *(int *)(pcStack_70 + -0x7fb4);
      if (uStack_64 != 0) {
LAB_000990fc:
        in_a3 = (u32 *)0xffffffff;
        pJVar15 = (JsonParse *)&uStack_64;
        (**(code **)(pcStack_70 + -0x7e28))(pJVar21,pJVar15,4);
        goto LAB_00099118;
      }
    }
    else {
      iVar4 = (*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24))(uVar3,iVar11,iVar4 + 1);
      if (iVar4 != 0) {
        uStack_64 = *(u32 *)(iVar4 + 8);
        goto LAB_000990f4;
      }
      uStack_64 = 0;
      iVar4 = *(int *)(pcStack_70 + -0x7fb4);
    }
    zFormat = sqlite3_mprintf((char *)(iVar4 + -0x7478),iVar11);
    pJVar15 = (JsonParse *)zFormat;
    (**(code **)(pcStack_70 + -0x7e40))(pJVar21,zFormat,0xffffffff);
    pJVar2 = (JsonParse *)zFormat;
    (**(code **)(pcStack_70 + -0x7f90))();
  }
LAB_00099118:
  if (pJStack_5c == (JsonNode *)*piVar23) {
    return;
  }
  pcVar26 = *(code **)(pcStack_70 + -0x7ba0);
  pcVar27 = rtreeBestIndex;
  (*pcVar26)();
  pJStack_8c = pJVar21;
  piStack_94 = piVar23;
  iStack_90 = iVar11;
  pJVar21 = &JStack_c8;
  pcStack_d0 = pcVar26 + 0xca310;
  pcStack_84 = pcVar27;
  pJStack_88 = pJVar22;
  pJStack_98 = (JsonParse *)zFormat;
  piVar19 = *(int **)(pcVar26 + 0xc278c);
  uVar17 = pJVar15->nNode;
  JStack_c8.nNode = 0;
  JStack_c8.nAlloc = 0;
  JStack_c8.aNode = (JsonNode *)0x0;
  JStack_c8.zJson = (char *)0x0;
  JStack_c8.aUp = (u32 *)0x0;
  JStack_c8.oom = '\0';
  JStack_c8.nErr = '\0';
  JStack_c8.iDepth = 0;
  JStack_c8.nJson = 0;
  JStack_c8.iHold = 0;
  uStack_a8 = 0;
  uStack_a4 = 0;
  uStack_a0 = 0;
  iStack_9c = *piVar19;
  pApnd = (sqlite3_value **)(uVar17 * 2);
  if ((int)uVar17 < 1) {
    pJVar22 = (JsonParse *)0x0;
    pJVar15->oom = '\0';
    pJVar15->nErr = '\0';
    pJVar15->iDepth = 2;
    pJVar15->iHold = 1;
LAB_00099480:
    puVar13 = pJVar2[1].aUp;
    uVar25._0_1_ = pJVar2[1].oom;
    uVar25._1_1_ = pJVar2[1].nErr;
    uVar25._2_2_ = pJVar2[1].iDepth;
    pJVar21 = (JsonParse *)((int)puVar13 >> ((uint)pJVar22 & 0x1f));
    pJVar20 = pJVar21;
    pJVar2 = (JsonParse *)
             (((int)puVar13 << 1) << (~(uint)pJVar22 & 0x1f) | uVar25 >> ((uint)pJVar22 & 0x1f));
    if (((uint)pJVar22 & 0x20) != 0) {
      pJVar20 = (JsonParse *)((int)puVar13 >> 0x1f);
      pJVar2 = pJVar21;
    }
    pJVar21 = pJVar2;
    dVar28 = (double)(**(code **)(pcStack_d0 + -0x7f18))(pJVar20);
    pJVar15[1].aUp = &pJVar20->nNode;
    *(JsonParse **)&pJVar15[1].oom = pJVar2;
    *(double *)&pJVar15[1].aNode = dVar28 * *(double *)(*(int *)(pcStack_d0 + -0x7f1c) + -0x7780);
  }
  else {
    uVar12 = pJVar15->nAlloc;
    bVar1 = false;
    uVar7 = uVar12;
    do {
      pcVar10 = (char *)(uVar7 + 4);
      uVar7 = uVar7 + 0xc;
      if (*pcVar10 == '@') {
        bVar1 = true;
      }
    } while (uVar17 * 0xc + uVar12 != uVar7);
    in_a3 = (u32 *)0x0;
    pJVar20 = (JsonParse *)0x0;
    iVar11 = 0;
LAB_000993bc:
    piVar23 = (int *)((int)in_a3 + uVar12);
    if (!bVar1) {
      if (*(char *)((int)piVar23 + 5) == '\0') goto LAB_0009939c;
      iVar4 = *piVar23;
      bVar14 = *(byte *)(piVar23 + 1);
      if (iVar4 != 0) goto LAB_000993d8;
      if (bVar14 != 2) goto LAB_00099394;
      if (iVar11 == 0) {
        iVar4 = 0;
      }
      else {
        iVar6 = 0;
        do {
          iVar4 = iVar6 + 1;
          pJVar15->aUp[iVar6 * 2] = 0;
          *(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;
          iVar6 = iVar4;
        } while (iVar4 != iVar11);
        iVar4 = iVar4 * 8;
      }
      in_a3 = (u32 *)0x1;
      pJVar15->oom = '\0';
      pJVar15->nErr = '\0';
      pJVar15->iDepth = 1;
      pJVar21 = *(JsonParse **)(pcVar26 + 0xc23f4);
      iVar11 = pJVar21[-0xffffffff000003bd].nJson;
      uVar17 = pJVar21[-0xffffffff000003bd].iHold;
      *(undefined4 *)((int)pJVar15->aUp + iVar4) = 1;
      pApnd = (sqlite3_value **)0x0;
      *(undefined1 *)((int)pJVar15->aUp + iVar4 + 4) = 1;
      pJVar15[1].aNode = (JsonNode *)iVar11;
      pJVar15[1].zJson = (char *)uVar17;
      pJVar15[1].oom = '\0';
      pJVar15[1].nErr = '\0';
      pJVar15[1].iDepth = 1;
      pJVar15[1].aUp = (u32 *)0x0;
      pJVar15[1].nJson = 1;
      goto LAB_000994e0;
    }
    if (*(char *)((int)piVar23 + 5) == '\0') {
LAB_0009939c:
      pJVar22 = pJVar20;
      if ((int)uVar17 <= iVar11 + 1) goto LAB_00099470;
    }
    else {
      iVar4 = *piVar23;
      bVar14 = *(byte *)(piVar23 + 1);
LAB_000993d8:
      if ((iVar4 < 1) || ((int)(uint)pJVar2->nErr < iVar4)) {
LAB_00099394:
        cVar18 = 'F';
        if (bVar14 != 0x40) goto LAB_0009939c;
      }
      else if (bVar14 == 8) {
        cVar18 = 'B';
      }
      else if (bVar14 < 9) {
        cVar18 = 'A';
        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;
      }
      else {
        cVar18 = 'D';
        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))
        goto LAB_0009939c;
      }
      puVar13 = pJVar15->aUp;
      pJVar22 = (JsonParse *)((int)&pJVar20->nNode + 2);
      *(char *)((int)&pJVar20->nNode + (int)&JStack_c8.nNode) = cVar18;
      *(char *)((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1)) = (char)*piVar23 + '/';
      puVar13[iVar11 * 2] = (int)pJVar22 >> 1;
      *(undefined1 *)(pJVar15->aUp + iVar11 * 2 + 1) = 1;
      uVar17 = pJVar15->nNode;
      pJVar20 = pJVar22;
      if ((int)uVar17 <= iVar11 + 1) {
LAB_00099470:
        pApnd = (sqlite3_value **)(iVar11 + 1);
        pJVar15->oom = '\0';
        pJVar15->nErr = '\0';
        pJVar15->iDepth = 2;
        pJVar15->iHold = 1;
        pJVar20 = pJVar22;
        if (pJVar22 == (JsonParse *)0x0) goto LAB_00099480;
        goto LAB_00099544;
      }
    }
    in_a3 = in_a3 + 3;
    if ((int)pJVar20 < 0x28) goto code_r0x000993b8;
    pJVar15->oom = '\0';
    pJVar15->nErr = '\0';
    pJVar15->iDepth = 2;
    pJVar15->iHold = 1;
LAB_00099544:
    pApnd = (sqlite3_value **)(iVar11 + 1);
    pcVar10 = sqlite3_mprintf((char *)(*(int *)(pcVar26 + 0xc2348) + 0x71f4));
    pJVar15->nJson = (int)pcVar10;
    if (pcVar10 != (char *)0x0) {
      pJVar22 = (JsonParse *)((int)pJVar20 >> 1);
      goto LAB_00099480;
    }
  }
LAB_000994e0:
  if (iStack_9c == *piVar19) {
    return;
  }
  pcVar26 = *(code **)(pcStack_d0 + -0x7ba0);
  pcVar27 = rtreeCheckAppendMsg;
  iVar11 = iStack_9c;
  (*pcVar26)();
  pcStack_100 = pcVar26 + 0xc9f94;
  pppsVar8 = &ppsStack_d8;
  puVar24 = *(undefined4 **)(pcVar26 + 0xc2410);
  pppsStack_f4 = (sqlite3_value ***)*puVar24;
  pppsVar16 = pppsStack_f4;
  pppsStack_f8 = pppsVar8;
  pJStack_ec = pJVar20;
  pJStack_e8 = pJVar15;
  pcStack_e4 = pcVar27;
  ppsStack_d8 = pApnd;
  puStack_d4 = in_a3;
  if ((*(int *)(iVar11 + 0x28) == 0) && (*(int *)(iVar11 + 0x30) < 100)) {
    puVar13 = (u32 *)sqlite3_vmprintf((char *)pJVar21,pppsVar8);
    if (puVar13 == (u32 *)0x0) {
LAB_000996f0:
      *(undefined4 *)(iVar11 + 0x28) = 7;
    }
    else {
      pppsVar8 = *(sqlite3_value ****)(iVar11 + 0x2c);
      if (pppsVar8 == (sqlite3_value ***)0x0) {
        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4);
      }
      else {
        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48);
      }
      pJVar21 = (JsonParse *)(*(int *)(pcStack_100 + -0x7fb4) + -0x741c);
      pcVar10 = sqlite3_mprintf((char *)pJVar21);
      *(char **)(iVar11 + 0x2c) = pcVar10;
      in_a3 = puVar13;
      if (pcVar10 == (char *)0x0) goto LAB_000996f0;
    }
    *(int *)(iVar11 + 0x30) = *(int *)(iVar11 + 0x30) + 1;
    pppsVar16 = pppsVar8;
  }
  if (pppsStack_f4 == (sqlite3_value ***)*puVar24) {
    return;
  }
  pcVar26 = *(code **)(pcStack_100 + -0x7ba0);
  pcVar27 = jsonLookup;
  (*pcVar26)();
  piVar19 = *(int **)(pcVar26 + 0xc231c);
  pppsStack_128 = (sqlite3_value ***)0x0;
  psStack_124 = (sqlite3_context *)*piVar19;
  argv = pApnd;
  iStack_120 = iVar11;
  puStack_11c = puVar24;
  pJStack_118 = pJVar2;
  pcStack_114 = pcVar27;
  if (pppsVar16 != (sqlite3_value ***)0x0) {
    if (*(char *)pppsVar16 == '$') {
      argv = (sqlite3_value **)((int)pppsVar16 + 1);
      jsonLookupStep(pJVar21,0,(char *)argv,(int *)pApnd,(char **)&pppsStack_128);
      pppsVar16 = pppsStack_128;
      if (pppsStack_128 == (sqlite3_value ***)0x0) goto LAB_000997bc;
    }
    pppsStack_128 = pppsVar16;
    iVar11 = *(int *)(pcVar26 + 0xc1eec);
    pJVar21->nErr = pJVar21->nErr + '\x01';
    pppsVar16 = pppsStack_128;
    pppsVar8 = (sqlite3_value ***)sqlite3_mprintf((char *)(iVar11 + -0x7414));
    if (pppsVar8 == (sqlite3_value ***)0x0) {
      (**(code **)(pcVar26 + 0xc2074))(in_a3);
    }
    else {
      argv = (sqlite3_value **)0xffffffff;
      pppsVar16 = pppsVar8;
      (**(code **)(pcVar26 + 0xc2060))(in_a3);
      (**(code **)(pcVar26 + 0xc1f10))(pppsVar8);
    }
  }
LAB_000997bc:
  if (psStack_124 == (sqlite3_context *)*piVar19) {
    return;
  }
  pcVar26 = *(code **)(pcVar26 + 0xc2300);
  pCtx = psStack_124;
  (*pcVar26)();
  pJVar21 = jsonParseCached(pCtx,argv,pCtx);
  if (pJVar21 != (JsonParse *)0x0) {
    if (pppsVar16 == (sqlite3_value ***)0x2) {
      pcVar10 = (char *)(**(code **)(pcVar26 + 0xc1dd4))(argv[1]);
      pJVar9 = jsonLookup(pJVar21,pcVar10,(int *)0x0,pCtx);
    }
    else {
      pJVar9 = pJVar21->aNode;
    }
    if (pJVar9 != (JsonNode *)0x0) {
                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */
                    /* WARNING: Treating indirect jump as call */
      (**(code **)(pcVar26 + 0xc1e3c))
                (pCtx,*(undefined4 *)
                       ((uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c),0xffffffff,
                 0);
      return;
    }
  }
  return;
code_r0x000993b8:
  uVar12 = pJVar15->nAlloc;
  iVar11 = iVar11 + 1;
  goto LAB_000993bc;
}



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

{
  int *piVar1;
  bool bVar2;
  undefined *puVar3;
  byte **ppbVar4;
  int **ppiVar5;
  undefined4 uVar6;
  int iVar7;
  int iVar8;
  undefined4 uVar9;
  int iVar10;
  int *piVar11;
  byte **ppbVar12;
  int *piVar13;
  int **ppiVar14;
  byte bVar15;
  int **ppiVar16;
  int **ppiVar17;
  byte **ppbVar18;
  byte *pbVar19;
  int *piVar20;
  undefined1 uVar21;
  uint uVar22;
  uint uVar23;
  int **unaff_s1;
  int *piVar24;
  undefined4 *puVar25;
  int **unaff_s2;
  int **unaff_s3;
  int *piVar26;
  undefined *puVar27;
  code *pcVar28;
  double dVar29;
  undefined8 uVar30;
  int *local_resc;
  byte **ppbStack_128;
  byte *pbStack_d8;
  int *piStack_d4;
  code *local_d0;
  undefined4 local_c8;
  undefined4 local_c4;
  undefined4 local_c0;
  undefined4 local_bc;
  undefined4 local_b8;
  undefined4 local_b4;
  undefined4 local_b0;
  undefined4 local_ac;
  undefined4 local_a8;
  undefined4 local_a4;
  undefined1 local_a0;
  int local_9c;
  int **local_98;
  int *local_94;
  int local_90;
  int **local_8c;
  int **local_88;
  undefined4 local_84;
  undefined *local_70;
  int *local_64;
  int local_60;
  byte **local_5c;
  undefined *local_58;
  int **local_54;
  int **local_50;
  int **local_4c;
  
  puVar3 = PTR___stack_chk_guard_0015ba2c;
  ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c;
  ppiVar14 = param_1;
  ppiVar16 = param_2;
  local_54 = unaff_s1;
  local_4c = unaff_s3;
  local_resc = param_4;
  if (*param_1 == (int *)0x0) {
    ppiVar16 = &local_resc;
    ppiVar5 = (int **)sqlite3_vmprintf(param_3);
    if (ppiVar5 == (int **)0x0) {
LAB_00099014:
      unaff_s2 = (int **)0x0;
      *param_1 = (int *)0x7;
      ppiVar14 = (int **)*param_2;
    }
    else {
      ppiVar14 = (int **)*param_2;
      unaff_s2 = ppiVar5;
      if (ppiVar14 != (int **)0x0) {
        param_3 = ppiVar5;
        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);
        ppiVar16 = ppiVar14;
        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);
        if (unaff_s2 == (int **)0x0) goto LAB_00099014;
        ppiVar14 = (int **)*param_2;
      }
    }
    (*(code *)PTR_sqlite3_free_0015b620)();
    *param_2 = (int *)unaff_s2;
    local_54 = param_1;
    local_4c = param_2;
  }
  ppbVar4 = *(byte ***)puVar3;
  if (ppbVar12 == ppbVar4) {
    return ppbVar4;
  }
  puVar27 = PTR___stack_chk_fail_0015ba10;
  (*(code *)PTR___stack_chk_fail_0015ba10)();
  local_70 = puVar27 + 0xca57c;
  local_58 = puVar3;
  piVar24 = *(int **)(puVar27 + 0xc29f8);
  local_64 = (int *)0x0;
  local_5c = (byte **)*piVar24;
  local_50 = unaff_s2;
  uVar6 = (**(code **)(puVar27 + 0xc2694))();
  iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3);
  iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3);
  ppiVar5 = ppiVar14;
  if (ppiVar16 == (int **)&SUB_00000002) {
    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);
    param_4 = &local_60;
    local_60 = 0;
    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);
    if (local_60 == 0) {
      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);
      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);
    }
    else {
      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);
      if ((iVar7 != 0) && (iVar10 == 4)) {
        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);
        local_64 = (int *)*local_64;
        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))
                                   (uVar6,iVar7,iVar8 + 1,local_64);
        if (local_64 == piVar20) {
          (**(code **)(local_70 + -0x7e40))
                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);
        }
        goto LAB_000990fc;
      }
      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);
      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);
    }
  }
  else {
    if (iVar7 == 0) {
LAB_000990f4:
      iVar8 = *(int *)(local_70 + -0x7fb4);
      if (local_64 != (int *)0x0) {
LAB_000990fc:
        param_4 = (int *)0xffffffff;
        ppiVar17 = &local_64;
        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);
        goto LAB_00099118;
      }
    }
    else {
      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);
      if (iVar8 != 0) {
        local_64 = *(int **)(iVar8 + 8);
        goto LAB_000990f4;
      }
      local_64 = (int *)0x0;
      iVar8 = *(int *)(local_70 + -0x7fb4);
    }
    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);
    ppiVar17 = param_3;
    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);
    ppiVar5 = param_3;
    (**(code **)(local_70 + -0x7f90))();
  }
LAB_00099118:
  if (local_5c == (byte **)*piVar24) {
    return (byte **)*piVar24;
  }
  pcVar28 = *(code **)(local_70 + -0x7ba0);
  uVar6 = 0x992a0;
  (*pcVar28)();
  local_8c = ppiVar14;
  local_94 = piVar24;
  local_90 = iVar7;
  piVar24 = &local_c8;
  local_d0 = pcVar28 + 0xca310;
  local_84 = uVar6;
  local_88 = ppiVar16;
  local_98 = param_3;
  piVar26 = *(int **)(pcVar28 + 0xc278c);
  piVar20 = *ppiVar17;
  local_c8 = 0;
  local_c4 = 0;
  local_c0 = 0;
  local_bc = 0;
  local_b8 = 0;
  local_b4 = 0;
  local_b0 = 0;
  local_ac = 0;
  local_a8 = 0;
  local_a4 = 0;
  local_a0 = 0;
  local_9c = *piVar26;
  pbVar19 = (byte *)((int)piVar20 * 2);
  if ((int)piVar20 < 1) {
    uVar23 = 0;
    ppiVar17[5] = (int *)0x2;
    ppiVar17[7] = (int *)0x1;
LAB_00099480:
    piVar24 = ppiVar5[0xc];
    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));
    piVar11 = piVar13;
    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |
                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));
    if ((uVar23 & 0x20) != 0) {
      piVar11 = (int *)((int)piVar24 >> 0x1f);
      piVar20 = piVar13;
    }
    piVar24 = piVar20;
    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);
    ppbVar12 = (byte **)0x0;
    ppiVar17[0xc] = piVar11;
    ppiVar17[0xd] = piVar20;
    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);
  }
  else {
    piVar13 = ppiVar17[1];
    bVar2 = false;
    piVar11 = piVar13;
    do {
      piVar1 = piVar11 + 1;
      piVar11 = piVar11 + 3;
      if (*(char *)piVar1 == '@') {
        bVar2 = true;
      }
    } while (piVar13 + (int)piVar20 * 3 != piVar11);
    param_4 = (int *)0x0;
    uVar22 = 0;
    iVar7 = 0;
LAB_000993bc:
    piVar13 = (int *)((int)piVar13 + (int)param_4);
    if (!bVar2) {
      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;
      iVar8 = *piVar13;
      bVar15 = *(byte *)(piVar13 + 1);
      if (iVar8 != 0) goto LAB_000993d8;
      if (bVar15 != 2) goto LAB_00099394;
      if (iVar7 == 0) {
        iVar8 = 0;
      }
      else {
        iVar10 = 0;
        do {
          iVar8 = iVar10 + 1;
          ppiVar17[4][iVar10 * 2] = 0;
          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;
          iVar10 = iVar8;
        } while (iVar8 != iVar7);
        iVar8 = iVar8 * 8;
      }
      param_4 = (int *)0x1;
      ppiVar17[5] = (int *)0x1;
      piVar24 = *(int **)(pcVar28 + 0xc23f4);
      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);
      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;
      pbVar19 = (byte *)0x0;
      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;
      *(undefined8 *)(ppiVar17 + 10) = uVar30;
      ppiVar17[0xd] = (int *)0x1;
      ppiVar17[0xc] = (int *)0x0;
      ppiVar17[0xe] = (int *)0x1;
      ppbVar12 = (byte **)0x0;
      goto LAB_000994e0;
    }
    if (*(char *)((int)piVar13 + 5) == '\0') {
LAB_0009939c:
      uVar23 = uVar22;
      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;
    }
    else {
      iVar8 = *piVar13;
      bVar15 = *(byte *)(piVar13 + 1);
LAB_000993d8:
      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {
LAB_00099394:
        uVar21 = 0x46;
        if (bVar15 != 0x40) goto LAB_0009939c;
      }
      else if (bVar15 == 8) {
        uVar21 = 0x42;
      }
      else if (bVar15 < 9) {
        uVar21 = 0x41;
        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;
      }
      else {
        uVar21 = 0x44;
        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))
           ) goto LAB_0009939c;
      }
      piVar20 = ppiVar17[4];
      uVar23 = uVar22 + 2;
      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;
      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';
      piVar20[iVar7 * 2] = (int)uVar23 >> 1;
      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;
      piVar20 = *ppiVar17;
      uVar22 = uVar23;
      if ((int)piVar20 <= iVar7 + 1) {
LAB_00099470:
        pbVar19 = (byte *)(iVar7 + 1);
        ppiVar17[5] = (int *)0x2;
        ppiVar17[7] = (int *)0x1;
        uVar22 = uVar23;
        if (uVar23 != 0) goto LAB_00099544;
        goto LAB_00099480;
      }
    }
    param_4 = param_4 + 3;
    if ((int)uVar22 < 0x28) goto code_r0x000993b8;
    ppiVar17[5] = (int *)0x2;
    ppiVar17[7] = (int *)0x1;
LAB_00099544:
    pbVar19 = (byte *)(iVar7 + 1);
    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);
    ppiVar17[6] = piVar20;
    if (piVar20 != (int *)0x0) {
      uVar23 = (int)uVar22 >> 1;
      goto LAB_00099480;
    }
    ppbVar12 = (byte **)&DAT_00000007;
  }
LAB_000994e0:
  if (local_9c == *piVar26) {
    return ppbVar12;
  }
  pcVar28 = *(code **)(local_d0 + -0x7ba0);
  iVar7 = local_9c;
  (*pcVar28)();
  ppbVar4 = &pbStack_d8;
  puVar25 = *(undefined4 **)(pcVar28 + 0xc2410);
  ppbVar18 = (byte **)*puVar25;
  ppbVar12 = ppbVar18;
  pbStack_d8 = pbVar19;
  piStack_d4 = param_4;
  if ((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))) goto LAB_0009967c;
  piVar20 = (int *)sqlite3_vmprintf();
  if (piVar20 == (int *)0x0) {
LAB_000996f0:
    *(undefined4 *)(iVar7 + 0x28) = 7;
  }
  else {
    ppbVar4 = *(byte ***)(iVar7 + 0x2c);
    if (ppbVar4 == (byte **)0x0) {
      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);
    }
    else {
      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);
    }
    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);
    iVar8 = sqlite3_mprintf();
    *(int *)(iVar7 + 0x2c) = iVar8;
    param_4 = piVar20;
    if (iVar8 == 0) goto LAB_000996f0;
  }
  *(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1;
  ppbVar12 = ppbVar4;
LAB_0009967c:
  ppbVar4 = (byte **)*puVar25;
  if (ppbVar18 == ppbVar4) {
    return ppbVar4;
  }
  pcVar28 = *(code **)(pcVar28 + 0xc23f4);
  (*pcVar28)();
  piVar20 = *(int **)(pcVar28 + 0xc231c);
  ppbStack_128 = (byte **)0x0;
  iVar7 = *piVar20;
  ppbVar4 = (byte **)0x0;
  if (ppbVar12 != (byte **)0x0) {
    if (*(char *)ppbVar12 == '$') {
      pbVar19 = (byte *)((int)ppbVar12 + 1);
      ppbVar4 = (byte **)FUN_0008b18c();
      ppbVar12 = ppbStack_128;
    }
    else {
      iVar8 = *(int *)(pcVar28 + 0xc1eec);
      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';
      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);
      if (ppbVar4 == (byte **)0x0) {
        (**(code **)(pcVar28 + 0xc2074))(param_4);
        ppbVar4 = (byte **)0x0;
      }
      else {
        pbVar19 = (byte *)0xffffffff;
        ppbVar12 = ppbVar4;
        (**(code **)(pcVar28 + 0xc2060))(param_4);
        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);
        ppbVar4 = (byte **)0x0;
      }
    }
  }
  if (iVar7 == *piVar20) {
    return ppbVar4;
  }
  pcVar28 = *(code **)(pcVar28 + 0xc2300);
  (*pcVar28)();
  ppbVar4 = (byte **)FUN_0008ad48();
  if (ppbVar4 != (byte **)0x0) {
    if (ppbVar12 == (byte **)&SUB_00000002) {
      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));
      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);
    }
    else {
      ppbVar4 = (byte **)ppbVar4[2];
    }
    if (ppbVar4 != (byte **)0x0) {
                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */
                    /* WARNING: Treating indirect jump as call */
      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))
                                    (iVar7,*(undefined4 *)
                                            ((uint)*(byte *)ppbVar4 * 4 +
                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);
      return ppbVar12;
    }
  }
  return ppbVar4;
code_r0x000993b8:
  piVar13 = ppiVar17[1];
  iVar7 = iVar7 + 1;
  goto LAB_000993bc;
}


lui gp,0xd
addiu gp,gp,-0x597c
addu gp,gp,t9
addiu sp,sp,-0x38
sw s0,0x24(sp)
sw gp,0x10(sp)
sw ra,0x34(sp)
sw s3,0x30(sp)
sw s2,0x2c(sp)
sw s1,0x28(sp)
sw a3,0x44(sp)
lw s0,-0x7b84(gp)
lw v0,0x0(a0)
lw v1,0x0(s0)
sw v1,0x1c(sp)
beq v0,zero,0x00098f98
_lw t9,-0x7f98(gp)
lw v1,0x1c(sp)
lw v0,0x0(s0)
bne v1,v0,0x00099028
_lw ra,0x34(sp)
lw s3,0x30(sp)
lw s2,0x2c(sp)
lw s1,0x28(sp)
lw s0,0x24(sp)
jr ra
_addiu sp,sp,0x38
or s3,a1,zero
addiu a1,sp,0x44
or s1,a0,zero
sw a1,0x18(sp)
bal 0x00091108
_or a0,a2,zero
lw gp,0x10(sp)
beq v0,zero,0x00099014
_or s2,v0,zero
lw a0,0x0(s3)
beq a0,zero,0x00098ffc
_lw t9,-0x7f88(gp)
or a1,a0,zero
lw a0,-0x7fc8(gp)
or a2,v0,zero
bal 0x000926b8
_addiu a0,a0,0x5624
or a0,s2,zero
lw gp,0x10(sp)
lw t9,-0x7f90(gp)
jalr t9
_or s2,v0,zero
beq s2,zero,0x00099014
_lw gp,0x10(sp)
lw a0,0x0(s3)
lw t9,-0x7f90(gp)
jalr t9
_nop
lw gp,0x10(sp)
b 0x00098f70
_sw s2,0x0(s3)
li v0,0x7
or s2,zero,zero
sw v0,0x0(s1)
b 0x00098ffc
_lw a0,0x0(s3)
lw t9,-0x7ba0(gp)
jalr t9
_nop
lui gp,0xd
addiu gp,gp,-0x5a84
addu gp,gp,t9
addiu sp,sp,-0x48
lw t9,-0x7ee8(gp)
sw s1,0x2c(sp)
sw ra,0x44(sp)
sw gp,0x10(sp)
sw s6,0x40(sp)
sw s5,0x3c(sp)
sw s4,0x38(sp)
or s4,a1,zero
sw s3,0x34(sp)
or s3,a0,zero
sw s2,0x30(sp)
sw s0,0x28(sp)
or s0,a2,zero
lw s1,-0x7b84(gp)
sw zero,0x1c(sp)
lw v0,0x0(s1)
sw v0,0x24(sp)
jalr t9
_nop
lw gp,0x10(sp)
or s5,v0,zero
lw t9,-0x7f9c(gp)
jalr t9
_lw a0,0x0(s0)
lw gp,0x10(sp)
or s2,v0,zero
lw t9,-0x7fac(gp)
jalr t9
_lw a0,0x0(s0)
li v1,0x2
lw gp,0x10(sp)
beq s4,v1,0x00099154
_addiu s6,v0,0x1
beq s2,zero,0x0009914c
_lw t9,-0x7ef0(gp)
or a2,s6,zero
or a1,s2,zero
addiu t9,t9,-0x2c24
jalr t9
_or a0,s5,zero
beq v0,zero,0x000991ec
_lw gp,0x10(sp)
lw v0,0x8(v0)
sw v0,0x1c(sp)
beq v0,zero,0x000991f4
_lw a0,-0x7fb4(gp)
lw t9,-0x7e28(gp)
li a3,-0x1
li a2,0x4
addiu a1,sp,0x1c
jalr t9
_or a0,s3,zero
lw gp,0x10(sp)
lw v1,0x24(sp)
lw v0,0x0(s1)
bne v1,v0,0x00099294
_lw ra,0x44(sp)
lw s6,0x40(sp)
lw s5,0x3c(sp)
lw s4,0x38(sp)
lw s3,0x34(sp)
lw s2,0x30(sp)
lw s1,0x2c(sp)
lw s0,0x28(sp)
jr ra
_addiu sp,sp,0x48
b 0x000990f4
_lw v0,0x1c(sp)
lw t9,-0x7ed0(gp)
jalr t9
_or a0,s3,zero
addiu a3,sp,0x20
lw gp,0x10(sp)
li a2,-0x1
li a1,0x3ec
sw zero,0x20(sp)
lw t9,-0x7d60(gp)
jalr t9
_or a0,v0,zero
lw v0,0x20(sp)
beq v0,zero,0x000991cc
_lw gp,0x10(sp)
lw t9,-0x7fac(gp)
jalr t9
_lw a0,0x4(s0)
beq s2,zero,0x000991ac
_lw gp,0x10(sp)
li v1,0x4
beq v0,v1,0x00099238
_lw t9,-0x7fb0(gp)
lw a1,-0x7fb4(gp)
li a2,-0x1
lw t9,-0x7e40(gp)
or a0,s3,zero
jalr t9
_addiu a1,a1,-0x744c
b 0x00099118
_lw gp,0x10(sp)
lw a1,-0x7fb4(gp)
li a2,-0x1
lw t9,-0x7e40(gp)
or a0,s3,zero
jalr t9
_addiu a1,a1,-0x7434
b 0x00099118
_lw gp,0x10(sp)
sw zero,0x1c(sp)
lw a0,-0x7fb4(gp)
or a1,s2,zero
lw t9,-0x7f88(gp)
bal 0x000926b8
_addiu a0,a0,-0x7478
li a2,-0x1
lw gp,0x10(sp)
or a0,s3,zero
or a1,v0,zero
lw t9,-0x7e40(gp)
jalr t9
_or s0,v0,zero
lw gp,0x10(sp)
lw t9,-0x7f90(gp)
jalr t9
_or a0,s0,zero
b 0x00099118
_lw gp,0x10(sp)
jalr t9
_lw a0,0x4(s0)
or a2,s6,zero
lw gp,0x10(sp)
or a1,s2,zero
lw v0,0x0(v0)
or a0,s5,zero
lw t9,-0x7eb0(gp)
or a3,v0,zero
addiu t9,t9,0x43f8
jalr t9
_sw v0,0x1c(sp)
lw v1,0x1c(sp)
bne v1,v0,0x000990fc
_lw gp,0x10(sp)
lw a1,-0x7fc8(gp)
li a2,-0x1
lw t9,-0x7e40(gp)
or a0,s3,zero
jalr t9
_addiu a1,a1,0x52ac
b 0x000990fc
_lw gp,0x10(sp)
lw t9,-0x7ba0(gp)
jalr t9
_nop
lui gp,0xd
addiu gp,gp,-0x5cf0
addu gp,gp,t9
addiu sp,sp,-0x60
sw s3,0x54(sp)
sw s1,0x4c(sp)
or s1,a1,zero
sw s2,0x50(sp)
addiu a1,sp,0x18
sw gp,0x10(sp)
or s2,a0,zero
sw ra,0x5c(sp)
sw s4,0x58(sp)
sw s0,0x48(sp)
lw s3,-0x7b84(gp)
lw t1,0x0(s1)
sw zero,0x18(sp)
sw zero,0x4(a1)
sw zero,0x8(a1)
sw zero,0xc(a1)
sw zero,0x10(a1)
sw zero,0x14(a1)
sw zero,0x18(a1)
sw zero,0x1c(a1)
sw zero,0x20(a1)
sw zero,0x24(a1)
sb zero,0x28(a1)
lw v0,0x0(s3)
sw v0,0x44(sp)
blez t1,0x000995f8
_sll a2,t1,0x1
lw v1,0x4(s1)
or t0,zero,zero
addu a2,a2,t1
li a3,0x1
sll a2,a2,0x2
or v0,v1,zero
addu a2,a2,v1
lbu a0,0x4(v0)
addiu v0,v0,0xc
xori a0,a0,0x40
bne a2,v0,0x00099338
_movz t0,a3,a0
or a3,zero,zero
or s0,zero,zero
or a2,zero,zero
li t9,0x1
li t3,0x40
li t8,0x8
li t7,0x20
li t6,0x10
li t4,0x2
b 0x000993bc
_li t5,0x4
beq v0,zero,0x0009939c
_nop
lw v0,0x0(v1)
bne v0,zero,0x000993d8
_lbu a0,0x4(v1)
beq a0,t4,0x00099568
_nop
beq a0,t3,0x00099410
_li t2,0x46
addiu a2,a2,0x1
slt v0,a2,t1
beq v0,zero,0x00099470
_li v0,0x2
slti v0,s0,0x28
beq v0,zero,0x00099534
_addiu a3,a3,0xc
lw v1,0x4(s1)
addu v1,v1,a3
beq t0,zero,0x00099378
_lbu v0,0x5(v1)
beq v0,zero,0x0009939c
_nop
lw v0,0x0(v1)
lbu a0,0x4(v1)
blez v0,0x00099394
_nop
lbu t2,0x15(s2)
slt v0,t2,v0
bne v0,zero,0x00099394
_nop
beq a0,t8,0x0009952c
_sltiu v0,a0,0x9
beq v0,zero,0x0009950c
_nop
beq a0,t4,0x00099410
_li t2,0x41
bne a0,t5,0x0009939c
_li t2,0x45
addiu v0,sp,0x48
lw a0,0x10(s1)
addiu t1,s0,0x1
addu s4,v0,s0
sll v0,a2,0x3
addiu s0,s0,0x2
sb t2,-0x30(s4)
addiu a2,a2,0x1
lw t2,0x0(v1)
addiu v1,sp,0x48
sra s4,s0,0x1
addu t1,v1,t1
addu v1,a0,v0
addiu a0,t2,0x2f
sb a0,-0x30(t1)
sw s4,0x0(v1)
lw v1,0x10(s1)
addu v0,v1,v0
sb t9,0x4(v0)
lw t1,0x0(s1)
slt v0,a2,t1
bne v0,zero,0x000993b0
_slti v0,s0,0x28
li v0,0x2
sw v0,0x14(s1)
li v0,0x1
bne s0,zero,0x00099544
_sw v0,0x1c(s1)
lw v0,0x30(s2)
nor a1,zero,s0
lw s2,0x34(s2)
andi a0,s0,0x20
lw t9,-0x7f18(gp)
sll v1,v0,0x1
srlv s2,s2,s0
sllv v1,v1,a1
srav s0,v0,s0
sra v0,v0,0x1f
or s2,v1,s2
movn s2,s0,a0
movn s0,v0,a0
or a1,s2,zero
jalr t9
_or a0,s0,zero
or v0,zero,zero
lw gp,0x10(sp)
sw s0,0x30(s1)
sw s2,0x34(s1)
lw v1,-0x7f1c(gp)
ldc1 f2,-0x7780(v1)
mul.D f0,f0,f2
sdc1 f0,0x28(s1)
lw a0,0x44(sp)
lw v1,0x0(s3)
bne a0,v1,0x00099610
_lw ra,0x5c(sp)
lw s4,0x58(sp)
lw s3,0x54(sp)
lw s2,0x50(sp)
lw s1,0x4c(sp)
lw s0,0x48(sp)
jr ra
_addiu sp,sp,0x60
beq a0,t7,0x00099410
_li t2,0x44
beq a0,t3,0x00099410
_li t2,0x46
bne a0,t6,0x0009939c
_li t2,0x43
b 0x00099414
_addiu v0,sp,0x48
b 0x00099410
_li t2,0x42
li v0,0x2
sw v0,0x14(s1)
li v0,0x1
sw v0,0x1c(s1)
lw a0,-0x7fc8(gp)
lw t9,-0x7f88(gp)
bal 0x000926b8
_addiu a0,a0,0x71f4
lw gp,0x10(sp)
beq v0,zero,0x000995f0
_sw v0,0x18(s1)
b 0x00099480
_sra s0,s0,0x1
beq a2,zero,0x000995e4
_nop
or v1,zero,zero
lw a1,0x10(s1)
sll a3,v1,0x3
addiu v1,v1,0x1
addu a1,a1,a3
sw zero,0x0(a1)
lw a0,0x10(s1)
addu a0,a0,a3
bne v1,a2,0x00099574
_sb zero,0x4(a0)
sll v1,v1,0x3
or a2,v1,zero
lw a1,0x10(s1)
li a0,0x1
li a3,0x1
sw a0,0x14(s1)
addu v1,a1,v1
lw a1,-0x7f1c(gp)
ldc1 f0,-0x7788(a1)
sw a0,0x0(v1)
lw v1,0x10(s1)
addu v1,v1,a2
or a2,zero,zero
sb a0,0x4(v1)
sdc1 f0,0x28(s1)
sw a3,0x34(s1)
sw a2,0x30(s1)
b 0x000994e0
_sw a0,0x38(s1)
or a2,zero,zero
b 0x000995a0
_or v1,zero,zero
b 0x000994e0
_li v0,0x7
li v0,0x2
or s0,zero,zero
sw v0,0x14(s1)
li v0,0x1
b 0x00099480
_sw v0,0x1c(s1)
lw t9,-0x7ba0(gp)
jalr t9
_nop
(translation_unit "byte ** FUN_00098f2c(int **param_1,int **param_2,int **param_3,int *param_4)\n\n{\n  int *piVar1;\n  bool bVar2;\n  undefined *puVar3;\n  byte **ppbVar4;\n  int **ppiVar5;\n  undefined4 uVar6;\n  int iVar7;\n  int iVar8;\n  undefined4 uVar9;\n  int iVar10;\n  int *piVar11;\n  byte **ppbVar12;\n  int *piVar13;\n  int **ppiVar14;\n  byte bVar15;\n  int **ppiVar16;\n  int **ppiVar17;\n  byte **ppbVar18;\n  byte *pbVar19;\n  int *piVar20;\n  undefined1 uVar21;\n  uint uVar22;\n  uint uVar23;\n  int **unaff_s1;\n  int *piVar24;\n  undefined4 *puVar25;\n  int **unaff_s2;\n  int **unaff_s3;\n  int *piVar26;\n  undefined *puVar27;\n  code *pcVar28;\n  double dVar29;\n  undefined8 uVar30;\n  int *local_resc;\n  byte **ppbStack_128;\n  byte *pbStack_d8;\n  int *piStack_d4;\n  code *local_d0;\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined1 local_a0;\n  int local_9c;\n  int **local_98;\n  int *local_94;\n  int local_90;\n  int **local_8c;\n  int **local_88;\n  undefined4 local_84;\n  undefined *local_70;\n  int *local_64;\n  int local_60;\n  byte **local_5c;\n  undefined *local_58;\n  int **local_54;\n  int **local_50;\n  int **local_4c;\n  \n  puVar3 = PTR___stack_chk_guard_0015ba2c;\n  ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c;\n  ppiVar14 = param_1;\n  ppiVar16 = param_2;\n  local_54 = unaff_s1;\n  local_4c = unaff_s3;\n  local_resc = param_4;\n  if (*param_1 == (int *)0x0) {\n    ppiVar16 = &local_resc;\n    ppiVar5 = (int **)sqlite3_vmprintf(param_3);\n    if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)();\n    *param_2 = (int *)unaff_s2;\n    local_54 = param_1;\n    local_4c = param_2;\n  }\n  ppbVar4 = *(byte ***)puVar3;\n  if (ppbVar12 == ppbVar4) {\n    return ppbVar4;\n  }\n  puVar27 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_70 = puVar27 + 0xca57c;\n  local_58 = puVar3;\n  piVar24 = *(int **)(puVar27 + 0xc29f8);\n  local_64 = (int *)0x0;\n  local_5c = (byte **)*piVar24;\n  local_50 = unaff_s2;\n  uVar6 = (**(code **)(puVar27 + 0xc2694))();\n  iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3);\n  iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3);\n  ppiVar5 = ppiVar14;\n  if (ppiVar16 == (int **)&SUB_00000002) {\n    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);\n    param_4 = &local_60;\n    local_60 = 0;\n    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);\n    if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n  }\n  else {\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }\nLAB_00099118:\n  if (local_5c == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }\n  pcVar28 = *(code **)(local_70 + -0x7ba0);\n  uVar6 = 0x992a0;\n  (*pcVar28)();\n  local_8c = ppiVar14;\n  local_94 = piVar24;\n  local_90 = iVar7;\n  piVar24 = &local_c8;\n  local_d0 = pcVar28 + 0xca310;\n  local_84 = uVar6;\n  local_88 = ppiVar16;\n  local_98 = param_3;\n  piVar26 = *(int **)(pcVar28 + 0xc278c);\n  piVar20 = *ppiVar17;\n  local_c8 = 0;\n  local_c4 = 0;\n  local_c0 = 0;\n  local_bc = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = *piVar26;\n  pbVar19 = (byte *)((int)piVar20 * 2);\n  if ((int)piVar20 < 1) {\n    uVar23 = 0;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099480:\n    piVar24 = ppiVar5[0xc];\n    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));\n    piVar11 = piVar13;\n    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));\n    if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }\n    piVar24 = piVar20;\n    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);\n    ppbVar12 = (byte **)0x0;\n    ppiVar17[0xc] = piVar11;\n    ppiVar17[0xd] = piVar20;\n    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }\nLAB_000994e0:\n  if (local_9c == *piVar26) {\n    return ppbVar12;\n  }\n  pcVar28 = *(code **)(local_d0 + -0x7ba0);\n  iVar7 = local_9c;\n  (*pcVar28)();\n  ppbVar4 = &pbStack_d8;\n  puVar25 = *(undefined4 **)(pcVar28 + 0xc2410);\n  ppbVar18 = (byte **)*puVar25;\n  ppbVar12 = ppbVar18;\n  pbStack_d8 = pbVar19;\n  piStack_d4 = param_4;\n  if ((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))) goto LAB_0009967c;\n  piVar20 = (int *)sqlite3_vmprintf();\n  if (piVar20 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;\n  }\n  else {\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }\n  *(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1;\n  ppbVar12 = ppbVar4;\nLAB_0009967c:\n  ppbVar4 = (byte **)*puVar25;\n  if (ppbVar18 == ppbVar4) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc23f4);\n  (*pcVar28)();\n  piVar20 = *(int **)(pcVar28 + 0xc231c);\n  ppbStack_128 = (byte **)0x0;\n  iVar7 = *piVar20;\n  ppbVar4 = (byte **)0x0;\n  if (ppbVar12 != (byte **)0x0) {\n    if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }\n  }\n  if (iVar7 == *piVar20) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc2300);\n  (*pcVar28)();\n  ppbVar4 = (byte **)FUN_0008ad48();\n  if (ppbVar4 != (byte **)0x0) {\n    if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }\n    if (ppbVar4 != (byte **)0x0) {\n                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }\n  }\n  return ppbVar4;\ncode_r0x000993b8:\n  piVar13 = ppiVar17[1];\n  iVar7 = iVar7 + 1;\n  goto LAB_000993bc;\n}\n\n" (function_definition "byte ** FUN_00098f2c(int **param_1,int **param_2,int **param_3,int *param_4)\n\n{\n  int *piVar1;\n  bool bVar2;\n  undefined *puVar3;\n  byte **ppbVar4;\n  int **ppiVar5;\n  undefined4 uVar6;\n  int iVar7;\n  int iVar8;\n  undefined4 uVar9;\n  int iVar10;\n  int *piVar11;\n  byte **ppbVar12;\n  int *piVar13;\n  int **ppiVar14;\n  byte bVar15;\n  int **ppiVar16;\n  int **ppiVar17;\n  byte **ppbVar18;\n  byte *pbVar19;\n  int *piVar20;\n  undefined1 uVar21;\n  uint uVar22;\n  uint uVar23;\n  int **unaff_s1;\n  int *piVar24;\n  undefined4 *puVar25;\n  int **unaff_s2;\n  int **unaff_s3;\n  int *piVar26;\n  undefined *puVar27;\n  code *pcVar28;\n  double dVar29;\n  undefined8 uVar30;\n  int *local_resc;\n  byte **ppbStack_128;\n  byte *pbStack_d8;\n  int *piStack_d4;\n  code *local_d0;\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined1 local_a0;\n  int local_9c;\n  int **local_98;\n  int *local_94;\n  int local_90;\n  int **local_8c;\n  int **local_88;\n  undefined4 local_84;\n  undefined *local_70;\n  int *local_64;\n  int local_60;\n  byte **local_5c;\n  undefined *local_58;\n  int **local_54;\n  int **local_50;\n  int **local_4c;\n  \n  puVar3 = PTR___stack_chk_guard_0015ba2c;\n  ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c;\n  ppiVar14 = param_1;\n  ppiVar16 = param_2;\n  local_54 = unaff_s1;\n  local_4c = unaff_s3;\n  local_resc = param_4;\n  if (*param_1 == (int *)0x0) {\n    ppiVar16 = &local_resc;\n    ppiVar5 = (int **)sqlite3_vmprintf(param_3);\n    if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)();\n    *param_2 = (int *)unaff_s2;\n    local_54 = param_1;\n    local_4c = param_2;\n  }\n  ppbVar4 = *(byte ***)puVar3;\n  if (ppbVar12 == ppbVar4) {\n    return ppbVar4;\n  }\n  puVar27 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_70 = puVar27 + 0xca57c;\n  local_58 = puVar3;\n  piVar24 = *(int **)(puVar27 + 0xc29f8);\n  local_64 = (int *)0x0;\n  local_5c = (byte **)*piVar24;\n  local_50 = unaff_s2;\n  uVar6 = (**(code **)(puVar27 + 0xc2694))();\n  iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3);\n  iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3);\n  ppiVar5 = ppiVar14;\n  if (ppiVar16 == (int **)&SUB_00000002) {\n    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);\n    param_4 = &local_60;\n    local_60 = 0;\n    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);\n    if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n  }\n  else {\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }\nLAB_00099118:\n  if (local_5c == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }\n  pcVar28 = *(code **)(local_70 + -0x7ba0);\n  uVar6 = 0x992a0;\n  (*pcVar28)();\n  local_8c = ppiVar14;\n  local_94 = piVar24;\n  local_90 = iVar7;\n  piVar24 = &local_c8;\n  local_d0 = pcVar28 + 0xca310;\n  local_84 = uVar6;\n  local_88 = ppiVar16;\n  local_98 = param_3;\n  piVar26 = *(int **)(pcVar28 + 0xc278c);\n  piVar20 = *ppiVar17;\n  local_c8 = 0;\n  local_c4 = 0;\n  local_c0 = 0;\n  local_bc = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = *piVar26;\n  pbVar19 = (byte *)((int)piVar20 * 2);\n  if ((int)piVar20 < 1) {\n    uVar23 = 0;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099480:\n    piVar24 = ppiVar5[0xc];\n    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));\n    piVar11 = piVar13;\n    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));\n    if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }\n    piVar24 = piVar20;\n    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);\n    ppbVar12 = (byte **)0x0;\n    ppiVar17[0xc] = piVar11;\n    ppiVar17[0xd] = piVar20;\n    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }\nLAB_000994e0:\n  if (local_9c == *piVar26) {\n    return ppbVar12;\n  }\n  pcVar28 = *(code **)(local_d0 + -0x7ba0);\n  iVar7 = local_9c;\n  (*pcVar28)();\n  ppbVar4 = &pbStack_d8;\n  puVar25 = *(undefined4 **)(pcVar28 + 0xc2410);\n  ppbVar18 = (byte **)*puVar25;\n  ppbVar12 = ppbVar18;\n  pbStack_d8 = pbVar19;\n  piStack_d4 = param_4;\n  if ((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))) goto LAB_0009967c;\n  piVar20 = (int *)sqlite3_vmprintf();\n  if (piVar20 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;\n  }\n  else {\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }\n  *(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1;\n  ppbVar12 = ppbVar4;\nLAB_0009967c:\n  ppbVar4 = (byte **)*puVar25;\n  if (ppbVar18 == ppbVar4) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc23f4);\n  (*pcVar28)();\n  piVar20 = *(int **)(pcVar28 + 0xc231c);\n  ppbStack_128 = (byte **)0x0;\n  iVar7 = *piVar20;\n  ppbVar4 = (byte **)0x0;\n  if (ppbVar12 != (byte **)0x0) {\n    if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }\n  }\n  if (iVar7 == *piVar20) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc2300);\n  (*pcVar28)();\n  ppbVar4 = (byte **)FUN_0008ad48();\n  if (ppbVar4 != (byte **)0x0) {\n    if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }\n    if (ppbVar4 != (byte **)0x0) {\n                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }\n  }\n  return ppbVar4;\ncode_r0x000993b8:\n  piVar13 = ppiVar17[1];\n  iVar7 = iVar7 + 1;\n  goto LAB_000993bc;\n}" type_identifier (pointer_declarator "** FUN_00098f2c(int **param_1,int **param_2,int **param_3,int *param_4)" * (pointer_declarator "* FUN_00098f2c(int **param_1,int **param_2,int **param_3,int *param_4)" * (function_declarator "FUN_00098f2c(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  int *piVar1;\n  bool bVar2;\n  undefined *puVar3;\n  byte **ppbVar4;\n  int **ppiVar5;\n  undefined4 uVar6;\n  int iVar7;\n  int iVar8;\n  undefined4 uVar9;\n  int iVar10;\n  int *piVar11;\n  byte **ppbVar12;\n  int *piVar13;\n  int **ppiVar14;\n  byte bVar15;\n  int **ppiVar16;\n  int **ppiVar17;\n  byte **ppbVar18;\n  byte *pbVar19;\n  int *piVar20;\n  undefined1 uVar21;\n  uint uVar22;\n  uint uVar23;\n  int **unaff_s1;\n  int *piVar24;\n  undefined4 *puVar25;\n  int **unaff_s2;\n  int **unaff_s3;\n  int *piVar26;\n  undefined *puVar27;\n  code *pcVar28;\n  double dVar29;\n  undefined8 uVar30;\n  int *local_resc;\n  byte **ppbStack_128;\n  byte *pbStack_d8;\n  int *piStack_d4;\n  code *local_d0;\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined1 local_a0;\n  int local_9c;\n  int **local_98;\n  int *local_94;\n  int local_90;\n  int **local_8c;\n  int **local_88;\n  undefined4 local_84;\n  undefined *local_70;\n  int *local_64;\n  int local_60;\n  byte **local_5c;\n  undefined *local_58;\n  int **local_54;\n  int **local_50;\n  int **local_4c;\n  \n  puVar3 = PTR___stack_chk_guard_0015ba2c;\n  ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c;\n  ppiVar14 = param_1;\n  ppiVar16 = param_2;\n  local_54 = unaff_s1;\n  local_4c = unaff_s3;\n  local_resc = param_4;\n  if (*param_1 == (int *)0x0) {\n    ppiVar16 = &local_resc;\n    ppiVar5 = (int **)sqlite3_vmprintf(param_3);\n    if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)();\n    *param_2 = (int *)unaff_s2;\n    local_54 = param_1;\n    local_4c = param_2;\n  }\n  ppbVar4 = *(byte ***)puVar3;\n  if (ppbVar12 == ppbVar4) {\n    return ppbVar4;\n  }\n  puVar27 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_70 = puVar27 + 0xca57c;\n  local_58 = puVar3;\n  piVar24 = *(int **)(puVar27 + 0xc29f8);\n  local_64 = (int *)0x0;\n  local_5c = (byte **)*piVar24;\n  local_50 = unaff_s2;\n  uVar6 = (**(code **)(puVar27 + 0xc2694))();\n  iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3);\n  iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3);\n  ppiVar5 = ppiVar14;\n  if (ppiVar16 == (int **)&SUB_00000002) {\n    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);\n    param_4 = &local_60;\n    local_60 = 0;\n    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);\n    if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n  }\n  else {\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }\nLAB_00099118:\n  if (local_5c == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }\n  pcVar28 = *(code **)(local_70 + -0x7ba0);\n  uVar6 = 0x992a0;\n  (*pcVar28)();\n  local_8c = ppiVar14;\n  local_94 = piVar24;\n  local_90 = iVar7;\n  piVar24 = &local_c8;\n  local_d0 = pcVar28 + 0xca310;\n  local_84 = uVar6;\n  local_88 = ppiVar16;\n  local_98 = param_3;\n  piVar26 = *(int **)(pcVar28 + 0xc278c);\n  piVar20 = *ppiVar17;\n  local_c8 = 0;\n  local_c4 = 0;\n  local_c0 = 0;\n  local_bc = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = *piVar26;\n  pbVar19 = (byte *)((int)piVar20 * 2);\n  if ((int)piVar20 < 1) {\n    uVar23 = 0;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099480:\n    piVar24 = ppiVar5[0xc];\n    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));\n    piVar11 = piVar13;\n    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));\n    if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }\n    piVar24 = piVar20;\n    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);\n    ppbVar12 = (byte **)0x0;\n    ppiVar17[0xc] = piVar11;\n    ppiVar17[0xd] = piVar20;\n    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }\nLAB_000994e0:\n  if (local_9c == *piVar26) {\n    return ppbVar12;\n  }\n  pcVar28 = *(code **)(local_d0 + -0x7ba0);\n  iVar7 = local_9c;\n  (*pcVar28)();\n  ppbVar4 = &pbStack_d8;\n  puVar25 = *(undefined4 **)(pcVar28 + 0xc2410);\n  ppbVar18 = (byte **)*puVar25;\n  ppbVar12 = ppbVar18;\n  pbStack_d8 = pbVar19;\n  piStack_d4 = param_4;\n  if ((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))) goto LAB_0009967c;\n  piVar20 = (int *)sqlite3_vmprintf();\n  if (piVar20 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;\n  }\n  else {\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }\n  *(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1;\n  ppbVar12 = ppbVar4;\nLAB_0009967c:\n  ppbVar4 = (byte **)*puVar25;\n  if (ppbVar18 == ppbVar4) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc23f4);\n  (*pcVar28)();\n  piVar20 = *(int **)(pcVar28 + 0xc231c);\n  ppbStack_128 = (byte **)0x0;\n  iVar7 = *piVar20;\n  ppbVar4 = (byte **)0x0;\n  if (ppbVar12 != (byte **)0x0) {\n    if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }\n  }\n  if (iVar7 == *piVar20) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc2300);\n  (*pcVar28)();\n  ppbVar4 = (byte **)FUN_0008ad48();\n  if (ppbVar4 != (byte **)0x0) {\n    if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }\n    if (ppbVar4 != (byte **)0x0) {\n                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }\n  }\n  return ppbVar4;\ncode_r0x000993b8:\n  piVar13 = ppiVar17[1];\n  iVar7 = iVar7 + 1;\n  goto LAB_000993bc;\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "bool bVar2;" primitive_type identifier ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "byte **ppbVar4;" type_identifier (pointer_declarator "**ppbVar4" * (pointer_declarator "*ppbVar4" * identifier)) ;) (declaration "int **ppiVar5;" primitive_type (pointer_declarator "**ppiVar5" * (pointer_declarator "*ppiVar5" * identifier)) ;) (declaration "undefined4 uVar6;" type_identifier identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "undefined4 uVar9;" type_identifier identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "int *piVar11;" primitive_type (pointer_declarator "*piVar11" * identifier) ;) (declaration "byte **ppbVar12;" type_identifier (pointer_declarator "**ppbVar12" * (pointer_declarator "*ppbVar12" * identifier)) ;) (declaration "int *piVar13;" primitive_type (pointer_declarator "*piVar13" * identifier) ;) (declaration "int **ppiVar14;" primitive_type (pointer_declarator "**ppiVar14" * (pointer_declarator "*ppiVar14" * identifier)) ;) (declaration "byte bVar15;" type_identifier identifier ;) (declaration "int **ppiVar16;" primitive_type (pointer_declarator "**ppiVar16" * (pointer_declarator "*ppiVar16" * identifier)) ;) (declaration "int **ppiVar17;" primitive_type (pointer_declarator "**ppiVar17" * (pointer_declarator "*ppiVar17" * identifier)) ;) (declaration "byte **ppbVar18;" type_identifier (pointer_declarator "**ppbVar18" * (pointer_declarator "*ppbVar18" * identifier)) ;) (declaration "byte *pbVar19;" type_identifier (pointer_declarator "*pbVar19" * identifier) ;) (declaration "int *piVar20;" primitive_type (pointer_declarator "*piVar20" * identifier) ;) (declaration "undefined1 uVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "uint uVar23;" type_identifier identifier ;) (declaration "int **unaff_s1;" primitive_type (pointer_declarator "**unaff_s1" * (pointer_declarator "*unaff_s1" * 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 "undefined *puVar27;" type_identifier (pointer_declarator "*puVar27" * identifier) ;) (declaration "code *pcVar28;" type_identifier (pointer_declarator "*pcVar28" * identifier) ;) (declaration "double dVar29;" primitive_type identifier ;) (declaration "undefined8 uVar30;" type_identifier identifier ;) (declaration "int *local_resc;" primitive_type (pointer_declarator "*local_resc" * identifier) ;) (declaration "byte **ppbStack_128;" type_identifier (pointer_declarator "**ppbStack_128" * (pointer_declarator "*ppbStack_128" * identifier)) ;) (declaration "byte *pbStack_d8;" type_identifier (pointer_declarator "*pbStack_d8" * identifier) ;) (declaration "int *piStack_d4;" primitive_type (pointer_declarator "*piStack_d4" * identifier) ;) (declaration "code *local_d0;" type_identifier (pointer_declarator "*local_d0" * identifier) ;) (declaration "undefined4 local_c8;" type_identifier identifier ;) (declaration "undefined4 local_c4;" type_identifier identifier ;) (declaration "undefined4 local_c0;" type_identifier identifier ;) (declaration "undefined4 local_bc;" type_identifier identifier ;) (declaration "undefined4 local_b8;" type_identifier identifier ;) (declaration "undefined4 local_b4;" type_identifier identifier ;) (declaration "undefined4 local_b0;" type_identifier identifier ;) (declaration "undefined4 local_ac;" type_identifier identifier ;) (declaration "undefined4 local_a8;" type_identifier identifier ;) (declaration "undefined4 local_a4;" type_identifier identifier ;) (declaration "undefined1 local_a0;" type_identifier identifier ;) (declaration "int local_9c;" primitive_type identifier ;) (declaration "int **local_98;" primitive_type (pointer_declarator "**local_98" * (pointer_declarator "*local_98" * identifier)) ;) (declaration "int *local_94;" primitive_type (pointer_declarator "*local_94" * identifier) ;) (declaration "int local_90;" primitive_type identifier ;) (declaration "int **local_8c;" primitive_type (pointer_declarator "**local_8c" * (pointer_declarator "*local_8c" * identifier)) ;) (declaration "int **local_88;" primitive_type (pointer_declarator "**local_88" * (pointer_declarator "*local_88" * identifier)) ;) (declaration "undefined4 local_84;" type_identifier identifier ;) (declaration "undefined *local_70;" type_identifier (pointer_declarator "*local_70" * identifier) ;) (declaration "int *local_64;" primitive_type (pointer_declarator "*local_64" * identifier) ;) (declaration "int local_60;" primitive_type identifier ;) (declaration "byte **local_5c;" type_identifier (pointer_declarator "**local_5c" * (pointer_declarator "*local_5c" * identifier)) ;) (declaration "undefined *local_58;" type_identifier (pointer_declarator "*local_58" * identifier) ;) (declaration "int **local_54;" primitive_type (pointer_declarator "**local_54" * (pointer_declarator "*local_54" * identifier)) ;) (declaration "int **local_50;" primitive_type (pointer_declarator "**local_50" * (pointer_declarator "*local_50" * identifier)) ;) (declaration "int **local_4c;" primitive_type (pointer_declarator "**local_4c" * (pointer_declarator "*local_4c" * identifier)) ;) (expression_statement "puVar3 = PTR___stack_chk_guard_0015ba2c;" (assignment_expression "puVar3 = PTR___stack_chk_guard_0015ba2c" identifier = identifier) ;) (expression_statement "ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c;" (assignment_expression "ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c" identifier = (pointer_expression "*(byte ***)PTR___stack_chk_guard_0015ba2c" * (cast_expression "(byte ***)PTR___stack_chk_guard_0015ba2c" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) identifier))) ;) (expression_statement "ppiVar14 = param_1;" (assignment_expression "ppiVar14 = param_1" identifier = identifier) ;) (expression_statement "ppiVar16 = param_2;" (assignment_expression "ppiVar16 = param_2" identifier = identifier) ;) (expression_statement "local_54 = unaff_s1;" (assignment_expression "local_54 = unaff_s1" identifier = identifier) ;) (expression_statement "local_4c = unaff_s3;" (assignment_expression "local_4c = unaff_s3" identifier = identifier) ;) (expression_statement "local_resc = param_4;" (assignment_expression "local_resc = param_4" identifier = identifier) ;) (if_statement "if (*param_1 == (int *)0x0) {\n    ppiVar16 = &local_resc;\n    ppiVar5 = (int **)sqlite3_vmprintf(param_3);\n    if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)();\n    *param_2 = (int *)unaff_s2;\n    local_54 = param_1;\n    local_4c = param_2;\n  }" if (parenthesized_expression "(*param_1 == (int *)0x0)" ( (binary_expression "*param_1 == (int *)0x0" (pointer_expression "*param_1" * identifier) == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    ppiVar16 = &local_resc;\n    ppiVar5 = (int **)sqlite3_vmprintf(param_3);\n    if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)();\n    *param_2 = (int *)unaff_s2;\n    local_54 = param_1;\n    local_4c = param_2;\n  }" { (expression_statement "ppiVar16 = &local_resc;" (assignment_expression "ppiVar16 = &local_resc" identifier = (pointer_expression "&local_resc" & identifier)) ;) (expression_statement "ppiVar5 = (int **)sqlite3_vmprintf(param_3);" (assignment_expression "ppiVar5 = (int **)sqlite3_vmprintf(param_3)" identifier = (cast_expression "(int **)sqlite3_vmprintf(param_3)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "sqlite3_vmprintf(param_3)" identifier (argument_list "(param_3)" ( identifier ))))) ;) (if_statement "if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }" if (parenthesized_expression "(ppiVar5 == (int **)0x0)" ( (binary_expression "ppiVar5 == (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      *param_1 = (int *)0x7;\n      ppiVar14 = (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 "*param_1 = (int *)0x7;" (assignment_expression "*param_1 = (int *)0x7" (pointer_expression "*param_1" * identifier) = (cast_expression "(int *)0x7" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar14 = (int **)*param_2;" (assignment_expression "ppiVar14 = (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      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }" else (compound_statement "{\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }" { (expression_statement "ppiVar14 = (int **)*param_2;" (assignment_expression "ppiVar14 = (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 = ppiVar5;" (assignment_expression "unaff_s2 = ppiVar5" identifier = identifier) ;) (if_statement "if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\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 "{\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }" { (expression_statement "param_3 = ppiVar5;" (assignment_expression "param_3 = ppiVar5" identifier = identifier) ;) (expression_statement "unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);" (assignment_expression "unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624)" identifier = (cast_expression "(int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624)" identifier (argument_list "(PTR_LAB_0015b5e8 + 0x5624)" ( (binary_expression "PTR_LAB_0015b5e8 + 0x5624" identifier + number_literal) ))))) ;) (expression_statement "ppiVar16 = ppiVar14;" (assignment_expression "ppiVar16 = ppiVar14" identifier = identifier) ;) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(ppiVar5)" (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 "(ppiVar5)" ( 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 "ppiVar14 = (int **)*param_2;" (assignment_expression "ppiVar14 = (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 *)PTR_sqlite3_free_0015b620)();" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)()" (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 "()" ( ))) ;) (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 "local_54 = param_1;" (assignment_expression "local_54 = param_1" identifier = identifier) ;) (expression_statement "local_4c = param_2;" (assignment_expression "local_4c = param_2" identifier = identifier) ;) })) (expression_statement "ppbVar4 = *(byte ***)puVar3;" (assignment_expression "ppbVar4 = *(byte ***)puVar3" identifier = (pointer_expression "*(byte ***)puVar3" * (cast_expression "(byte ***)puVar3" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) identifier))) ;) (if_statement "if (ppbVar12 == ppbVar4) {\n    return ppbVar4;\n  }" if (parenthesized_expression "(ppbVar12 == ppbVar4)" ( (binary_expression "ppbVar12 == ppbVar4" identifier == identifier) )) (compound_statement "{\n    return ppbVar4;\n  }" { (return_statement "return ppbVar4;" return 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 "local_70 = puVar27 + 0xca57c;" (assignment_expression "local_70 = puVar27 + 0xca57c" identifier = (binary_expression "puVar27 + 0xca57c" identifier + number_literal)) ;) (expression_statement "local_58 = puVar3;" (assignment_expression "local_58 = puVar3" identifier = identifier) ;) (expression_statement "piVar24 = *(int **)(puVar27 + 0xc29f8);" (assignment_expression "piVar24 = *(int **)(puVar27 + 0xc29f8)" identifier = (pointer_expression "*(int **)(puVar27 + 0xc29f8)" * (cast_expression "(int **)(puVar27 + 0xc29f8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar27 + 0xc29f8)" ( (binary_expression "puVar27 + 0xc29f8" identifier + number_literal) ))))) ;) (expression_statement "local_64 = (int *)0x0;" (assignment_expression "local_64 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_5c = (byte **)*piVar24;" (assignment_expression "local_5c = (byte **)*piVar24" identifier = (cast_expression "(byte **)*piVar24" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*piVar24" * identifier))) ;) (expression_statement "local_50 = unaff_s2;" (assignment_expression "local_50 = unaff_s2" identifier = identifier) ;) (expression_statement "uVar6 = (**(code **)(puVar27 + 0xc2694))();" (assignment_expression "uVar6 = (**(code **)(puVar27 + 0xc2694))()" identifier = (call_expression "(**(code **)(puVar27 + 0xc2694))()" (parenthesized_expression "(**(code **)(puVar27 + 0xc2694))" ( (pointer_expression "**(code **)(puVar27 + 0xc2694)" * (pointer_expression "*(code **)(puVar27 + 0xc2694)" * (cast_expression "(code **)(puVar27 + 0xc2694)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar27 + 0xc2694)" ( (binary_expression "puVar27 + 0xc2694" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3);" (assignment_expression "iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3)" identifier = (call_expression "(**(code **)(local_70 + -0x7f9c))(*param_3)" (parenthesized_expression "(**(code **)(local_70 + -0x7f9c))" ( (pointer_expression "**(code **)(local_70 + -0x7f9c)" * (pointer_expression "*(code **)(local_70 + -0x7f9c)" * (cast_expression "(code **)(local_70 + -0x7f9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7f9c)" ( (binary_expression "local_70 + -0x7f9c" identifier + number_literal) ))))) )) (argument_list "(*param_3)" ( (pointer_expression "*param_3" * identifier) )))) ;) (expression_statement "iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3);" (assignment_expression "iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3)" identifier = (call_expression "(**(code **)(local_70 + -0x7fac))(*param_3)" (parenthesized_expression "(**(code **)(local_70 + -0x7fac))" ( (pointer_expression "**(code **)(local_70 + -0x7fac)" * (pointer_expression "*(code **)(local_70 + -0x7fac)" * (cast_expression "(code **)(local_70 + -0x7fac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7fac)" ( (binary_expression "local_70 + -0x7fac" identifier + number_literal) ))))) )) (argument_list "(*param_3)" ( (pointer_expression "*param_3" * identifier) )))) ;) (expression_statement "ppiVar5 = ppiVar14;" (assignment_expression "ppiVar5 = ppiVar14" identifier = identifier) ;) (if_statement "if (ppiVar16 == (int **)&SUB_00000002) {\n    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);\n    param_4 = &local_60;\n    local_60 = 0;\n    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);\n    if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n  }\n  else {\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }" if (parenthesized_expression "(ppiVar16 == (int **)&SUB_00000002)" ( (binary_expression "ppiVar16 == (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    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);\n    param_4 = &local_60;\n    local_60 = 0;\n    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);\n    if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n  }" { (expression_statement "uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);" (assignment_expression "uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14)" identifier = (call_expression "(**(code **)(local_70 + -0x7ed0))(ppiVar14)" (parenthesized_expression "(**(code **)(local_70 + -0x7ed0))" ( (pointer_expression "**(code **)(local_70 + -0x7ed0)" * (pointer_expression "*(code **)(local_70 + -0x7ed0)" * (cast_expression "(code **)(local_70 + -0x7ed0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7ed0)" ( (binary_expression "local_70 + -0x7ed0" identifier + number_literal) ))))) )) (argument_list "(ppiVar14)" ( identifier )))) ;) (expression_statement "param_4 = &local_60;" (assignment_expression "param_4 = &local_60" identifier = (pointer_expression "&local_60" & identifier)) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) (expression_statement "(**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7d60))" ( (pointer_expression "**(code **)(local_70 + -0x7d60)" * (pointer_expression "*(code **)(local_70 + -0x7d60)" * (cast_expression "(code **)(local_70 + -0x7d60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7d60)" ( (binary_expression "local_70 + -0x7d60" identifier + number_literal) ))))) )) (argument_list "(uVar9,0x3ec,0xffffffff)" ( identifier , number_literal , number_literal ))) ;) (if_statement "if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }" if (parenthesized_expression "(local_60 == 0)" ( (binary_expression "local_60 == 0" identifier == number_literal) )) (compound_statement "{\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }" { (expression_statement "ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);" (assignment_expression "ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434)" identifier = (cast_expression "(int **)(*(int *)(local_70 + -0x7fb4) + -0x7434)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(local_70 + -0x7fb4) + -0x7434)" ( (binary_expression "*(int *)(local_70 + -0x7fb4) + -0x7434" (pointer_expression "*(int *)(local_70 + -0x7fb4)" * (cast_expression "(int *)(local_70 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + -0x7fb4)" ( (binary_expression "local_70 + -0x7fb4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7e40))" ( (pointer_expression "**(code **)(local_70 + -0x7e40)" * (pointer_expression "*(code **)(local_70 + -0x7e40)" * (cast_expression "(code **)(local_70 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7e40)" ( (binary_expression "local_70 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(ppiVar14,ppiVar17,0xffffffff)" ( identifier , identifier , number_literal ))) ;) }) (else_clause "else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }" else (compound_statement "{\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }" { (expression_statement "iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);" (assignment_expression "iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1])" identifier = (call_expression "(**(code **)(local_70 + -0x7fac))(param_3[1])" (parenthesized_expression "(**(code **)(local_70 + -0x7fac))" ( (pointer_expression "**(code **)(local_70 + -0x7fac)" * (pointer_expression "*(code **)(local_70 + -0x7fac)" * (cast_expression "(code **)(local_70 + -0x7fac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7fac)" ( (binary_expression "local_70 + -0x7fac" identifier + number_literal) ))))) )) (argument_list "(param_3[1])" ( (subscript_expression "param_3[1]" identifier [ number_literal ]) )))) ;) (if_statement "if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }" if (parenthesized_expression "((iVar7 != 0) && (iVar10 == 4))" ( (binary_expression "(iVar7 != 0) && (iVar10 == 4)" (parenthesized_expression "(iVar7 != 0)" ( (binary_expression "iVar7 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar10 == 4)" ( (binary_expression "iVar10 == 4" identifier == number_literal) ))) )) (compound_statement "{\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }" { (expression_statement "local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);" (assignment_expression "local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1])" identifier = (cast_expression "(int *)(**(code **)(local_70 + -0x7fb0))(param_3[1])" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(local_70 + -0x7fb0))(param_3[1])" (parenthesized_expression "(**(code **)(local_70 + -0x7fb0))" ( (pointer_expression "**(code **)(local_70 + -0x7fb0)" * (pointer_expression "*(code **)(local_70 + -0x7fb0)" * (cast_expression "(code **)(local_70 + -0x7fb0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7fb0)" ( (binary_expression "local_70 + -0x7fb0" identifier + number_literal) ))))) )) (argument_list "(param_3[1])" ( (subscript_expression "param_3[1]" identifier [ number_literal ]) ))))) ;) (expression_statement "local_64 = (int *)*local_64;" (assignment_expression "local_64 = (int *)*local_64" identifier = (cast_expression "(int *)*local_64" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_64" * identifier))) ;) (expression_statement "piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);" (assignment_expression "piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64)" identifier = (cast_expression "(int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64)" (parenthesized_expression "(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))" ( (pointer_expression "*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8)" * (cast_expression "(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(local_70 + -0x7eb0) + 0x43f8)" ( (binary_expression "*(int *)(local_70 + -0x7eb0) + 0x43f8" (pointer_expression "*(int *)(local_70 + -0x7eb0)" * (cast_expression "(int *)(local_70 + -0x7eb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + -0x7eb0)" ( (binary_expression "local_70 + -0x7eb0" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar6,iVar7,iVar8 + 1,local_64)" ( identifier , identifier , (binary_expression "iVar8 + 1" identifier + number_literal) , identifier ))))) ;) (if_statement "if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }" if (parenthesized_expression "(local_64 == piVar20)" ( (binary_expression "local_64 == piVar20" identifier == identifier) )) (compound_statement "{\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }" { (expression_statement "(**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7e40))" ( (pointer_expression "**(code **)(local_70 + -0x7e40)" * (pointer_expression "*(code **)(local_70 + -0x7e40)" * (cast_expression "(code **)(local_70 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7e40)" ( (binary_expression "local_70 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff)" ( identifier , (binary_expression "*(int *)(local_70 + -0x7fc8) + 0x52ac" (pointer_expression "*(int *)(local_70 + -0x7fc8)" * (cast_expression "(int *)(local_70 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + -0x7fc8)" ( (binary_expression "local_70 + -0x7fc8" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (goto_statement "goto LAB_000990fc;" goto statement_identifier ;) })) (expression_statement "ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);" (assignment_expression "ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c)" identifier = (cast_expression "(int **)(*(int *)(local_70 + -0x7fb4) + -0x744c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(local_70 + -0x7fb4) + -0x744c)" ( (binary_expression "*(int *)(local_70 + -0x7fb4) + -0x744c" (pointer_expression "*(int *)(local_70 + -0x7fb4)" * (cast_expression "(int *)(local_70 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + -0x7fb4)" ( (binary_expression "local_70 + -0x7fb4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7e40))" ( (pointer_expression "**(code **)(local_70 + -0x7e40)" * (pointer_expression "*(code **)(local_70 + -0x7e40)" * (cast_expression "(code **)(local_70 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7e40)" ( (binary_expression "local_70 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(ppiVar14,ppiVar17,0xffffffff)" ( identifier , identifier , number_literal ))) ;) }))) }) (else_clause "else {\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }" else (compound_statement "{\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }" { (if_statement "if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }" { (labeled_statement "LAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);" statement_identifier : (expression_statement "iVar8 = *(int *)(local_70 + -0x7fb4);" (assignment_expression "iVar8 = *(int *)(local_70 + -0x7fb4)" identifier = (pointer_expression "*(int *)(local_70 + -0x7fb4)" * (cast_expression "(int *)(local_70 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + -0x7fb4)" ( (binary_expression "local_70 + -0x7fb4" identifier + number_literal) ))))) ;)) (if_statement "if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }" if (parenthesized_expression "(local_64 != (int *)0x0)" ( (binary_expression "local_64 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }" { (labeled_statement "LAB_000990fc:\n        param_4 = (int *)0xffffffff;" statement_identifier : (expression_statement "param_4 = (int *)0xffffffff;" (assignment_expression "param_4 = (int *)0xffffffff" identifier = (cast_expression "(int *)0xffffffff" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "ppiVar17 = &local_64;" (assignment_expression "ppiVar17 = &local_64" identifier = (pointer_expression "&local_64" & identifier)) ;) (expression_statement "(**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);" (call_expression "(**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4)" (parenthesized_expression "(**(code **)(local_70 + -0x7e28))" ( (pointer_expression "**(code **)(local_70 + -0x7e28)" * (pointer_expression "*(code **)(local_70 + -0x7e28)" * (cast_expression "(code **)(local_70 + -0x7e28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7e28)" ( (binary_expression "local_70 + -0x7e28" identifier + number_literal) ))))) )) (argument_list "(ppiVar14,ppiVar17,4)" ( identifier , identifier , number_literal ))) ;) (goto_statement "goto LAB_00099118;" goto statement_identifier ;) })) }) (else_clause "else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }" else (compound_statement "{\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }" { (expression_statement "iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);" (assignment_expression "iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1)" identifier = (call_expression "(*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1)" (parenthesized_expression "(*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))" ( (pointer_expression "*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24)" * (cast_expression "(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(local_70 + -0x7ef0) + -0x2c24)" ( (binary_expression "*(int *)(local_70 + -0x7ef0) + -0x2c24" (pointer_expression "*(int *)(local_70 + -0x7ef0)" * (cast_expression "(int *)(local_70 + -0x7ef0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + -0x7ef0)" ( (binary_expression "local_70 + -0x7ef0" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar6,iVar7,iVar8 + 1)" ( identifier , identifier , (binary_expression "iVar8 + 1" identifier + number_literal) )))) ;) (if_statement "if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }" { (expression_statement "local_64 = *(int **)(iVar8 + 8);" (assignment_expression "local_64 = *(int **)(iVar8 + 8)" identifier = (pointer_expression "*(int **)(iVar8 + 8)" * (cast_expression "(int **)(iVar8 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 8)" ( (binary_expression "iVar8 + 8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000990f4;" goto statement_identifier ;) })) (expression_statement "local_64 = (int *)0x0;" (assignment_expression "local_64 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar8 = *(int *)(local_70 + -0x7fb4);" (assignment_expression "iVar8 = *(int *)(local_70 + -0x7fb4)" identifier = (pointer_expression "*(int *)(local_70 + -0x7fb4)" * (cast_expression "(int *)(local_70 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + -0x7fb4)" ( (binary_expression "local_70 + -0x7fb4" identifier + number_literal) ))))) ;) }))) (expression_statement "param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);" (assignment_expression "param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7)" identifier = (cast_expression "(int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "sqlite3_mprintf(iVar8 + -0x7478,iVar7)" identifier (argument_list "(iVar8 + -0x7478,iVar7)" ( (binary_expression "iVar8 + -0x7478" identifier + number_literal) , identifier ))))) ;) (expression_statement "ppiVar17 = param_3;" (assignment_expression "ppiVar17 = param_3" identifier = identifier) ;) (expression_statement "(**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7e40))" ( (pointer_expression "**(code **)(local_70 + -0x7e40)" * (pointer_expression "*(code **)(local_70 + -0x7e40)" * (cast_expression "(code **)(local_70 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7e40)" ( (binary_expression "local_70 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(ppiVar14,param_3,0xffffffff)" ( identifier , identifier , number_literal ))) ;) (expression_statement "ppiVar5 = param_3;" (assignment_expression "ppiVar5 = param_3" identifier = identifier) ;) (expression_statement "(**(code **)(local_70 + -0x7f90))();" (call_expression "(**(code **)(local_70 + -0x7f90))()" (parenthesized_expression "(**(code **)(local_70 + -0x7f90))" ( (pointer_expression "**(code **)(local_70 + -0x7f90)" * (pointer_expression "*(code **)(local_70 + -0x7f90)" * (cast_expression "(code **)(local_70 + -0x7f90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7f90)" ( (binary_expression "local_70 + -0x7f90" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) }))) (labeled_statement "LAB_00099118:\n  if (local_5c == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }" statement_identifier : (if_statement "if (local_5c == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }" if (parenthesized_expression "(local_5c == (byte **)*piVar24)" ( (binary_expression "local_5c == (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 "pcVar28 = *(code **)(local_70 + -0x7ba0);" (assignment_expression "pcVar28 = *(code **)(local_70 + -0x7ba0)" identifier = (pointer_expression "*(code **)(local_70 + -0x7ba0)" * (cast_expression "(code **)(local_70 + -0x7ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7ba0)" ( (binary_expression "local_70 + -0x7ba0" identifier + number_literal) ))))) ;) (expression_statement "uVar6 = 0x992a0;" (assignment_expression "uVar6 = 0x992a0" identifier = number_literal) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "local_8c = ppiVar14;" (assignment_expression "local_8c = ppiVar14" identifier = identifier) ;) (expression_statement "local_94 = piVar24;" (assignment_expression "local_94 = piVar24" identifier = identifier) ;) (expression_statement "local_90 = iVar7;" (assignment_expression "local_90 = iVar7" identifier = identifier) ;) (expression_statement "piVar24 = &local_c8;" (assignment_expression "piVar24 = &local_c8" identifier = (pointer_expression "&local_c8" & identifier)) ;) (expression_statement "local_d0 = pcVar28 + 0xca310;" (assignment_expression "local_d0 = pcVar28 + 0xca310" identifier = (binary_expression "pcVar28 + 0xca310" identifier + number_literal)) ;) (expression_statement "local_84 = uVar6;" (assignment_expression "local_84 = uVar6" identifier = identifier) ;) (expression_statement "local_88 = ppiVar16;" (assignment_expression "local_88 = ppiVar16" identifier = identifier) ;) (expression_statement "local_98 = param_3;" (assignment_expression "local_98 = param_3" identifier = identifier) ;) (expression_statement "piVar26 = *(int **)(pcVar28 + 0xc278c);" (assignment_expression "piVar26 = *(int **)(pcVar28 + 0xc278c)" identifier = (pointer_expression "*(int **)(pcVar28 + 0xc278c)" * (cast_expression "(int **)(pcVar28 + 0xc278c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc278c)" ( (binary_expression "pcVar28 + 0xc278c" identifier + number_literal) ))))) ;) (expression_statement "piVar20 = *ppiVar17;" (assignment_expression "piVar20 = *ppiVar17" identifier = (pointer_expression "*ppiVar17" * identifier)) ;) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" identifier = number_literal) ;) (expression_statement "local_c4 = 0;" (assignment_expression "local_c4 = 0" identifier = number_literal) ;) (expression_statement "local_c0 = 0;" (assignment_expression "local_c0 = 0" identifier = number_literal) ;) (expression_statement "local_bc = 0;" (assignment_expression "local_bc = 0" identifier = number_literal) ;) (expression_statement "local_b8 = 0;" (assignment_expression "local_b8 = 0" identifier = number_literal) ;) (expression_statement "local_b4 = 0;" (assignment_expression "local_b4 = 0" identifier = number_literal) ;) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) (expression_statement "local_ac = 0;" (assignment_expression "local_ac = 0" identifier = number_literal) ;) (expression_statement "local_a8 = 0;" (assignment_expression "local_a8 = 0" identifier = number_literal) ;) (expression_statement "local_a4 = 0;" (assignment_expression "local_a4 = 0" identifier = number_literal) ;) (expression_statement "local_a0 = 0;" (assignment_expression "local_a0 = 0" identifier = number_literal) ;) (expression_statement "local_9c = *piVar26;" (assignment_expression "local_9c = *piVar26" identifier = (pointer_expression "*piVar26" * identifier)) ;) (expression_statement "pbVar19 = (byte *)((int)piVar20 * 2);" (assignment_expression "pbVar19 = (byte *)((int)piVar20 * 2)" identifier = (cast_expression "(byte *)((int)piVar20 * 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar20 * 2)" ( (binary_expression "(int)piVar20 * 2" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (if_statement "if ((int)piVar20 < 1) {\n    uVar23 = 0;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099480:\n    piVar24 = ppiVar5[0xc];\n    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));\n    piVar11 = piVar13;\n    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));\n    if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }\n    piVar24 = piVar20;\n    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);\n    ppbVar12 = (byte **)0x0;\n    ppiVar17[0xc] = piVar11;\n    ppiVar17[0xd] = piVar20;\n    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }" if (parenthesized_expression "((int)piVar20 < 1)" ( (binary_expression "(int)piVar20 < 1" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n    uVar23 = 0;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099480:\n    piVar24 = ppiVar5[0xc];\n    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));\n    piVar11 = piVar13;\n    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));\n    if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }\n    piVar24 = piVar20;\n    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);\n    ppbVar12 = (byte **)0x0;\n    ppiVar17[0xc] = piVar11;\n    ppiVar17[0xd] = piVar20;\n    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);\n  }" { (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" identifier = number_literal) ;) (expression_statement "ppiVar17[5] = (int *)0x2;" (assignment_expression "ppiVar17[5] = (int *)0x2" (subscript_expression "ppiVar17[5]" identifier [ number_literal ]) = (cast_expression "(int *)0x2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar17[7] = (int *)0x1;" (assignment_expression "ppiVar17[7] = (int *)0x1" (subscript_expression "ppiVar17[7]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00099480:\n    piVar24 = ppiVar5[0xc];" statement_identifier : (expression_statement "piVar24 = ppiVar5[0xc];" (assignment_expression "piVar24 = ppiVar5[0xc]" identifier = (subscript_expression "ppiVar5[0xc]" identifier [ number_literal ])) ;)) (expression_statement "piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));" (assignment_expression "piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f))" identifier = (cast_expression "(int *)((int)piVar24 >> (uVar23 & 0x1f))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar24 >> (uVar23 & 0x1f))" ( (binary_expression "(int)piVar24 >> (uVar23 & 0x1f)" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) >> (parenthesized_expression "(uVar23 & 0x1f)" ( (binary_expression "uVar23 & 0x1f" identifier & number_literal) ))) )))) ;) (expression_statement "piVar11 = piVar13;" (assignment_expression "piVar11 = piVar13" identifier = identifier) ;) (expression_statement "piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));" (assignment_expression "piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f))" identifier = (cast_expression "(int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f))" ( (binary_expression "((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f)" (binary_expression "((int)piVar24 << 1) << (~uVar23 & 0x1f)" (parenthesized_expression "((int)piVar24 << 1)" ( (binary_expression "(int)piVar24 << 1" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) )) << (parenthesized_expression "(~uVar23 & 0x1f)" ( (binary_expression "~uVar23 & 0x1f" (unary_expression "~uVar23" ~ identifier) & number_literal) ))) | (binary_expression "(uint)ppiVar5[0xd] >> (uVar23 & 0x1f)" (cast_expression "(uint)ppiVar5[0xd]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "ppiVar5[0xd]" identifier [ number_literal ])) >> (parenthesized_expression "(uVar23 & 0x1f)" ( (binary_expression "uVar23 & 0x1f" identifier & number_literal) )))) )))) ;) (if_statement "if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }" if (parenthesized_expression "((uVar23 & 0x20) != 0)" ( (binary_expression "(uVar23 & 0x20) != 0" (parenthesized_expression "(uVar23 & 0x20)" ( (binary_expression "uVar23 & 0x20" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }" { (expression_statement "piVar11 = (int *)((int)piVar24 >> 0x1f);" (assignment_expression "piVar11 = (int *)((int)piVar24 >> 0x1f)" identifier = (cast_expression "(int *)((int)piVar24 >> 0x1f)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar24 >> 0x1f)" ( (binary_expression "(int)piVar24 >> 0x1f" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )))) ;) (expression_statement "piVar20 = piVar13;" (assignment_expression "piVar20 = piVar13" identifier = identifier) ;) })) (expression_statement "piVar24 = piVar20;" (assignment_expression "piVar24 = piVar20" identifier = identifier) ;) (expression_statement "dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);" (assignment_expression "dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11)" identifier = (cast_expression "(double)(**(code **)(local_d0 + -0x7f18))(piVar11)" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(local_d0 + -0x7f18))(piVar11)" (parenthesized_expression "(**(code **)(local_d0 + -0x7f18))" ( (pointer_expression "**(code **)(local_d0 + -0x7f18)" * (pointer_expression "*(code **)(local_d0 + -0x7f18)" * (cast_expression "(code **)(local_d0 + -0x7f18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_d0 + -0x7f18)" ( (binary_expression "local_d0 + -0x7f18" identifier + number_literal) ))))) )) (argument_list "(piVar11)" ( identifier ))))) ;) (expression_statement "ppbVar12 = (byte **)0x0;" (assignment_expression "ppbVar12 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "ppiVar17[0xc] = piVar11;" (assignment_expression "ppiVar17[0xc] = piVar11" (subscript_expression "ppiVar17[0xc]" identifier [ number_literal ]) = identifier) ;) (expression_statement "ppiVar17[0xd] = piVar20;" (assignment_expression "ppiVar17[0xd] = piVar20" (subscript_expression "ppiVar17[0xd]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);" (assignment_expression "*(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780)" (pointer_expression "*(double *)(ppiVar17 + 10)" * (cast_expression "(double *)(ppiVar17 + 10)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppiVar17 + 10)" ( (binary_expression "ppiVar17 + 10" identifier + number_literal) )))) = (binary_expression "dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780)" identifier * (pointer_expression "*(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780)" * (cast_expression "(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(local_d0 + -0x7f1c) + -0x7780)" ( (binary_expression "*(int *)(local_d0 + -0x7f1c) + -0x7780" (pointer_expression "*(int *)(local_d0 + -0x7f1c)" * (cast_expression "(int *)(local_d0 + -0x7f1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_d0 + -0x7f1c)" ( (binary_expression "local_d0 + -0x7f1c" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }" else (compound_statement "{\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }" { (expression_statement "piVar13 = ppiVar17[1];" (assignment_expression "piVar13 = ppiVar17[1]" identifier = (subscript_expression "ppiVar17[1]" identifier [ number_literal ])) ;) (expression_statement "bVar2 = false;" (assignment_expression "bVar2 = false" identifier = false) ;) (expression_statement "piVar11 = piVar13;" (assignment_expression "piVar11 = piVar13" identifier = identifier) ;) (do_statement "do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);" do (compound_statement "{\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    }" { (expression_statement "piVar1 = piVar11 + 1;" (assignment_expression "piVar1 = piVar11 + 1" identifier = (binary_expression "piVar11 + 1" identifier + number_literal)) ;) (expression_statement "piVar11 = piVar11 + 3;" (assignment_expression "piVar11 = piVar11 + 3" identifier = (binary_expression "piVar11 + 3" identifier + number_literal)) ;) (if_statement "if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }" if (parenthesized_expression "(*(char *)piVar1 == '@')" ( (binary_expression "*(char *)piVar1 == '@'" (pointer_expression "*(char *)piVar1" * (cast_expression "(char *)piVar1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'@'" ' character ')) )) (compound_statement "{\n        bVar2 = true;\n      }" { (expression_statement "bVar2 = true;" (assignment_expression "bVar2 = true" identifier = true) ;) })) }) while (parenthesized_expression "(piVar13 + (int)piVar20 * 3 != piVar11)" ( (binary_expression "piVar13 + (int)piVar20 * 3 != piVar11" (binary_expression "piVar13 + (int)piVar20 * 3" identifier + (binary_expression "(int)piVar20 * 3" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) != identifier) )) ;) (expression_statement "param_4 = (int *)0x0;" (assignment_expression "param_4 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar22 = 0;" (assignment_expression "uVar22 = 0" identifier = number_literal) ;) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);" statement_identifier : (expression_statement "piVar13 = (int *)((int)piVar13 + (int)param_4);" (assignment_expression "piVar13 = (int *)((int)piVar13 + (int)param_4)" identifier = (cast_expression "(int *)((int)piVar13 + (int)param_4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar13 + (int)param_4)" ( (binary_expression "(int)piVar13 + (int)param_4" (cast_expression "(int)piVar13" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)param_4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;)) (if_statement "if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }" if (parenthesized_expression "(!bVar2)" ( (unary_expression "!bVar2" ! identifier) )) (compound_statement "{\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }" { (if_statement "if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;" if (parenthesized_expression "(*(char *)((int)piVar13 + 5) == '\0')" ( (binary_expression "*(char *)((int)piVar13 + 5) == '\0'" (pointer_expression "*(char *)((int)piVar13 + 5)" * (cast_expression "(char *)((int)piVar13 + 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar13 + 5)" ( (binary_expression "(int)piVar13 + 5" (cast_expression "(int)piVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) (expression_statement "iVar8 = *piVar13;" (assignment_expression "iVar8 = *piVar13" identifier = (pointer_expression "*piVar13" * identifier)) ;) (expression_statement "bVar15 = *(byte *)(piVar13 + 1);" (assignment_expression "bVar15 = *(byte *)(piVar13 + 1)" identifier = (pointer_expression "*(byte *)(piVar13 + 1)" * (cast_expression "(byte *)(piVar13 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13 + 1)" ( (binary_expression "piVar13 + 1" identifier + number_literal) ))))) ;) (if_statement "if (iVar8 != 0) goto LAB_000993d8;" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000993d8;" goto statement_identifier ;)) (if_statement "if (bVar15 != 2) goto LAB_00099394;" if (parenthesized_expression "(bVar15 != 2)" ( (binary_expression "bVar15 != 2" identifier != number_literal) )) (goto_statement "goto LAB_00099394;" goto statement_identifier ;)) (if_statement "if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (compound_statement "{\n        iVar8 = 0;\n      }" { (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" identifier = number_literal) ;) }) (else_clause "else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }" else (compound_statement "{\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }" { (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) (do_statement "do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);" do (compound_statement "{\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        }" { (expression_statement "iVar8 = iVar10 + 1;" (assignment_expression "iVar8 = iVar10 + 1" identifier = (binary_expression "iVar10 + 1" identifier + number_literal)) ;) (expression_statement "ppiVar17[4][iVar10 * 2] = 0;" (assignment_expression "ppiVar17[4][iVar10 * 2] = 0" (subscript_expression "ppiVar17[4][iVar10 * 2]" (subscript_expression "ppiVar17[4]" identifier [ number_literal ]) [ (binary_expression "iVar10 * 2" identifier * number_literal) ]) = number_literal) ;) (expression_statement "*(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;" (assignment_expression "*(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0" (pointer_expression "*(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1)" * (cast_expression "(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppiVar17[4] + iVar10 * 2 + 1)" ( (binary_expression "ppiVar17[4] + iVar10 * 2 + 1" (binary_expression "ppiVar17[4] + iVar10 * 2" (subscript_expression "ppiVar17[4]" identifier [ number_literal ]) + (binary_expression "iVar10 * 2" identifier * number_literal)) + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = iVar8;" (assignment_expression "iVar10 = iVar8" identifier = identifier) ;) }) while (parenthesized_expression "(iVar8 != iVar7)" ( (binary_expression "iVar8 != iVar7" identifier != identifier) )) ;) (expression_statement "iVar8 = iVar8 * 8;" (assignment_expression "iVar8 = iVar8 * 8" identifier = (binary_expression "iVar8 * 8" identifier * number_literal)) ;) }))) (expression_statement "param_4 = (int *)0x1;" (assignment_expression "param_4 = (int *)0x1" identifier = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar17[5] = (int *)0x1;" (assignment_expression "ppiVar17[5] = (int *)0x1" (subscript_expression "ppiVar17[5]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "piVar24 = *(int **)(pcVar28 + 0xc23f4);" (assignment_expression "piVar24 = *(int **)(pcVar28 + 0xc23f4)" identifier = (pointer_expression "*(int **)(pcVar28 + 0xc23f4)" * (cast_expression "(int **)(pcVar28 + 0xc23f4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc23f4)" ( (binary_expression "pcVar28 + 0xc23f4" identifier + number_literal) ))))) ;) (expression_statement "uVar30 = *(undefined8 *)(piVar24 + -0x1de2);" (assignment_expression "uVar30 = *(undefined8 *)(piVar24 + -0x1de2)" identifier = (pointer_expression "*(undefined8 *)(piVar24 + -0x1de2)" * (cast_expression "(undefined8 *)(piVar24 + -0x1de2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar24 + -0x1de2)" ( (binary_expression "piVar24 + -0x1de2" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;" (assignment_expression "*(undefined4 *)((int)ppiVar17[4] + iVar8) = 1" (pointer_expression "*(undefined4 *)((int)ppiVar17[4] + iVar8)" * (cast_expression "(undefined4 *)((int)ppiVar17[4] + iVar8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppiVar17[4] + iVar8)" ( (binary_expression "(int)ppiVar17[4] + iVar8" (cast_expression "(int)ppiVar17[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "ppiVar17[4]" identifier [ number_literal ])) + identifier) )))) = number_literal) ;) (expression_statement "pbVar19 = (byte *)0x0;" (assignment_expression "pbVar19 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "*(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;" (assignment_expression "*(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1" (pointer_expression "*(undefined1 *)((int)ppiVar17[4] + iVar8 + 4)" * (cast_expression "(undefined1 *)((int)ppiVar17[4] + iVar8 + 4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppiVar17[4] + iVar8 + 4)" ( (binary_expression "(int)ppiVar17[4] + iVar8 + 4" (binary_expression "(int)ppiVar17[4] + iVar8" (cast_expression "(int)ppiVar17[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "ppiVar17[4]" identifier [ number_literal ])) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)(ppiVar17 + 10) = uVar30;" (assignment_expression "*(undefined8 *)(ppiVar17 + 10) = uVar30" (pointer_expression "*(undefined8 *)(ppiVar17 + 10)" * (cast_expression "(undefined8 *)(ppiVar17 + 10)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppiVar17 + 10)" ( (binary_expression "ppiVar17 + 10" identifier + number_literal) )))) = identifier) ;) (expression_statement "ppiVar17[0xd] = (int *)0x1;" (assignment_expression "ppiVar17[0xd] = (int *)0x1" (subscript_expression "ppiVar17[0xd]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar17[0xc] = (int *)0x0;" (assignment_expression "ppiVar17[0xc] = (int *)0x0" (subscript_expression "ppiVar17[0xc]" identifier [ number_literal ]) = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar17[0xe] = (int *)0x1;" (assignment_expression "ppiVar17[0xe] = (int *)0x1" (subscript_expression "ppiVar17[0xe]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppbVar12 = (byte **)0x0;" (assignment_expression "ppbVar12 = (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)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }" if (parenthesized_expression "(*(char *)((int)piVar13 + 5) == '\0')" ( (binary_expression "*(char *)((int)piVar13 + 5) == '\0'" (pointer_expression "*(char *)((int)piVar13 + 5)" * (cast_expression "(char *)((int)piVar13 + 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar13 + 5)" ( (binary_expression "(int)piVar13 + 5" (cast_expression "(int)piVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }" { (labeled_statement "LAB_0009939c:\n      uVar23 = uVar22;" statement_identifier : (expression_statement "uVar23 = uVar22;" (assignment_expression "uVar23 = uVar22" identifier = identifier) ;)) (if_statement "if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;" if (parenthesized_expression "((int)piVar20 <= iVar7 + 1)" ( (binary_expression "(int)piVar20 <= iVar7 + 1" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) <= (binary_expression "iVar7 + 1" identifier + number_literal)) )) (goto_statement "goto LAB_00099470;" goto statement_identifier ;)) }) (else_clause "else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }" else (compound_statement "{\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }" { (expression_statement "iVar8 = *piVar13;" (assignment_expression "iVar8 = *piVar13" identifier = (pointer_expression "*piVar13" * identifier)) ;) (expression_statement "bVar15 = *(byte *)(piVar13 + 1);" (assignment_expression "bVar15 = *(byte *)(piVar13 + 1)" identifier = (pointer_expression "*(byte *)(piVar13 + 1)" * (cast_expression "(byte *)(piVar13 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13 + 1)" ( (binary_expression "piVar13 + 1" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" statement_identifier : (if_statement "if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" if (parenthesized_expression "((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8))" ( (binary_expression "(iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)" (parenthesized_expression "(iVar8 < 1)" ( (binary_expression "iVar8 < 1" identifier < number_literal) )) || (parenthesized_expression "((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)" ( (binary_expression "(int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8" (binary_expression "(int)(uint)*(byte *)((int)ppiVar5 + 0x15)" (cast_expression "(int)(uint)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(uint)" ( identifier ))) * (cast_expression "(byte *)((int)ppiVar5 + 0x15)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppiVar5 + 0x15)" ( (binary_expression "(int)ppiVar5 + 0x15" (cast_expression "(int)ppiVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) ))) )) (compound_statement "{\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }" { (labeled_statement "LAB_00099394:\n        uVar21 = 0x46;" statement_identifier : (expression_statement "uVar21 = 0x46;" (assignment_expression "uVar21 = 0x46" identifier = number_literal) ;)) (if_statement "if (bVar15 != 0x40) goto LAB_0009939c;" if (parenthesized_expression "(bVar15 != 0x40)" ( (binary_expression "bVar15 != 0x40" identifier != number_literal) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) }) (else_clause "else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" else (if_statement "if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" if (parenthesized_expression "(bVar15 == 8)" ( (binary_expression "bVar15 == 8" identifier == number_literal) )) (compound_statement "{\n        uVar21 = 0x42;\n      }" { (expression_statement "uVar21 = 0x42;" (assignment_expression "uVar21 = 0x42" identifier = number_literal) ;) }) (else_clause "else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" else (if_statement "if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" if (parenthesized_expression "(bVar15 < 9)" ( (binary_expression "bVar15 < 9" identifier < number_literal) )) (compound_statement "{\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }" { (expression_statement "uVar21 = 0x41;" (assignment_expression "uVar21 = 0x41" identifier = number_literal) ;) (if_statement "if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;" if (parenthesized_expression "((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4))" ( (binary_expression "(bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)" (parenthesized_expression "(bVar15 != 2)" ( (binary_expression "bVar15 != 2" identifier != number_literal) )) && (parenthesized_expression "(uVar21 = 0x45, bVar15 != 4)" ( (comma_expression "uVar21 = 0x45, bVar15 != 4" (assignment_expression "uVar21 = 0x45" identifier = number_literal) , (binary_expression "bVar15 != 4" identifier != number_literal)) ))) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) }) (else_clause "else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" else (compound_statement "{\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" { (expression_statement "uVar21 = 0x44;" (assignment_expression "uVar21 = 0x44" identifier = number_literal) ;) (if_statement "if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;" if (parenthesized_expression "((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           )" ( (binary_expression "(bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))" (parenthesized_expression "(bVar15 != 0x20)" ( (binary_expression "bVar15 != 0x20" identifier != number_literal) )) && (parenthesized_expression "((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))" ( (parenthesized_expression "(uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10))" ( (comma_expression "uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)" (assignment_expression "uVar21 = 0x46" identifier = number_literal) , (binary_expression "bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)" (binary_expression "bVar15 != 0x40" identifier != number_literal) && (parenthesized_expression "(uVar21 = 0x43, bVar15 != 0x10)" ( (comma_expression "uVar21 = 0x43, bVar15 != 0x10" (assignment_expression "uVar21 = 0x43" identifier = number_literal) , (binary_expression "bVar15 != 0x10" identifier != number_literal)) )))) )) ))) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) })))))))) (expression_statement "piVar20 = ppiVar17[4];" (assignment_expression "piVar20 = ppiVar17[4]" identifier = (subscript_expression "ppiVar17[4]" identifier [ number_literal ])) ;) (expression_statement "uVar23 = uVar22 + 2;" (assignment_expression "uVar23 = uVar22 + 2" identifier = (binary_expression "uVar22 + 2" identifier + number_literal)) ;) (expression_statement "*(undefined1 *)((int)&local_c8 + uVar22) = uVar21;" (assignment_expression "*(undefined1 *)((int)&local_c8 + uVar22) = uVar21" (pointer_expression "*(undefined1 *)((int)&local_c8 + uVar22)" * (cast_expression "(undefined1 *)((int)&local_c8 + uVar22)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_c8 + uVar22)" ( (binary_expression "(int)&local_c8 + uVar22" (cast_expression "(int)&local_c8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_c8" & identifier)) + identifier) )))) = identifier) ;) (expression_statement "*(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';" (assignment_expression "*(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/'" (pointer_expression "*(char *)((int)&local_c8 + uVar22 + 1)" * (cast_expression "(char *)((int)&local_c8 + uVar22 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_c8 + uVar22 + 1)" ( (binary_expression "(int)&local_c8 + uVar22 + 1" (binary_expression "(int)&local_c8 + uVar22" (cast_expression "(int)&local_c8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_c8" & identifier)) + identifier) + number_literal) )))) = (binary_expression "(char)*piVar13 + '/'" (cast_expression "(char)*piVar13" ( (type_descriptor "char" primitive_type) ) (pointer_expression "*piVar13" * identifier)) + (char_literal "'/'" ' character '))) ;) (expression_statement "piVar20[iVar7 * 2] = (int)uVar23 >> 1;" (assignment_expression "piVar20[iVar7 * 2] = (int)uVar23 >> 1" (subscript_expression "piVar20[iVar7 * 2]" identifier [ (binary_expression "iVar7 * 2" identifier * number_literal) ]) = (binary_expression "(int)uVar23 >> 1" (cast_expression "(int)uVar23" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (expression_statement "*(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;" (assignment_expression "*(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1" (pointer_expression "*(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1)" * (cast_expression "(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppiVar17[4] + iVar7 * 2 + 1)" ( (binary_expression "ppiVar17[4] + iVar7 * 2 + 1" (binary_expression "ppiVar17[4] + iVar7 * 2" (subscript_expression "ppiVar17[4]" identifier [ number_literal ]) + (binary_expression "iVar7 * 2" identifier * number_literal)) + number_literal) )))) = number_literal) ;) (expression_statement "piVar20 = *ppiVar17;" (assignment_expression "piVar20 = *ppiVar17" identifier = (pointer_expression "*ppiVar17" * identifier)) ;) (expression_statement "uVar22 = uVar23;" (assignment_expression "uVar22 = uVar23" identifier = identifier) ;) (if_statement "if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }" if (parenthesized_expression "((int)piVar20 <= iVar7 + 1)" ( (binary_expression "(int)piVar20 <= iVar7 + 1" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) <= (binary_expression "iVar7 + 1" identifier + number_literal)) )) (compound_statement "{\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }" { (labeled_statement "LAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);" statement_identifier : (expression_statement "pbVar19 = (byte *)(iVar7 + 1);" (assignment_expression "pbVar19 = (byte *)(iVar7 + 1)" identifier = (cast_expression "(byte *)(iVar7 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 1)" ( (binary_expression "iVar7 + 1" identifier + number_literal) )))) ;)) (expression_statement "ppiVar17[5] = (int *)0x2;" (assignment_expression "ppiVar17[5] = (int *)0x2" (subscript_expression "ppiVar17[5]" identifier [ number_literal ]) = (cast_expression "(int *)0x2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar17[7] = (int *)0x1;" (assignment_expression "ppiVar17[7] = (int *)0x1" (subscript_expression "ppiVar17[7]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar22 = uVar23;" (assignment_expression "uVar22 = uVar23" identifier = identifier) ;) (if_statement "if (uVar23 != 0) goto LAB_00099544;" if (parenthesized_expression "(uVar23 != 0)" ( (binary_expression "uVar23 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00099544;" goto statement_identifier ;)) (goto_statement "goto LAB_00099480;" goto statement_identifier ;) })) }))) (expression_statement "param_4 = param_4 + 3;" (assignment_expression "param_4 = param_4 + 3" identifier = (binary_expression "param_4 + 3" identifier + number_literal)) ;) (if_statement "if ((int)uVar22 < 0x28) goto code_r0x000993b8;" if (parenthesized_expression "((int)uVar22 < 0x28)" ( (binary_expression "(int)uVar22 < 0x28" (cast_expression "(int)uVar22" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto code_r0x000993b8;" goto statement_identifier ;)) (expression_statement "ppiVar17[5] = (int *)0x2;" (assignment_expression "ppiVar17[5] = (int *)0x2" (subscript_expression "ppiVar17[5]" identifier [ number_literal ]) = (cast_expression "(int *)0x2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar17[7] = (int *)0x1;" (assignment_expression "ppiVar17[7] = (int *)0x1" (subscript_expression "ppiVar17[7]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);" statement_identifier : (expression_statement "pbVar19 = (byte *)(iVar7 + 1);" (assignment_expression "pbVar19 = (byte *)(iVar7 + 1)" identifier = (cast_expression "(byte *)(iVar7 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 1)" ( (binary_expression "iVar7 + 1" identifier + number_literal) )))) ;)) (expression_statement "piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);" (assignment_expression "piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4)" identifier = (cast_expression "(int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4)" identifier (argument_list "(*(int *)(pcVar28 + 0xc2348) + 0x71f4)" ( (binary_expression "*(int *)(pcVar28 + 0xc2348) + 0x71f4" (pointer_expression "*(int *)(pcVar28 + 0xc2348)" * (cast_expression "(int *)(pcVar28 + 0xc2348)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0xc2348)" ( (binary_expression "pcVar28 + 0xc2348" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "ppiVar17[6] = piVar20;" (assignment_expression "ppiVar17[6] = piVar20" (subscript_expression "ppiVar17[6]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }" if (parenthesized_expression "(piVar20 != (int *)0x0)" ( (binary_expression "piVar20 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }" { (expression_statement "uVar23 = (int)uVar22 >> 1;" (assignment_expression "uVar23 = (int)uVar22 >> 1" identifier = (binary_expression "(int)uVar22 >> 1" (cast_expression "(int)uVar22" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (goto_statement "goto LAB_00099480;" goto statement_identifier ;) })) (expression_statement "ppbVar12 = (byte **)&DAT_00000007;" (assignment_expression "ppbVar12 = (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 (local_9c == *piVar26) {\n    return ppbVar12;\n  }" statement_identifier : (if_statement "if (local_9c == *piVar26) {\n    return ppbVar12;\n  }" if (parenthesized_expression "(local_9c == *piVar26)" ( (binary_expression "local_9c == *piVar26" identifier == (pointer_expression "*piVar26" * identifier)) )) (compound_statement "{\n    return ppbVar12;\n  }" { (return_statement "return ppbVar12;" return identifier ;) }))) (expression_statement "pcVar28 = *(code **)(local_d0 + -0x7ba0);" (assignment_expression "pcVar28 = *(code **)(local_d0 + -0x7ba0)" identifier = (pointer_expression "*(code **)(local_d0 + -0x7ba0)" * (cast_expression "(code **)(local_d0 + -0x7ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_d0 + -0x7ba0)" ( (binary_expression "local_d0 + -0x7ba0" identifier + number_literal) ))))) ;) (expression_statement "iVar7 = local_9c;" (assignment_expression "iVar7 = local_9c" identifier = identifier) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "ppbVar4 = &pbStack_d8;" (assignment_expression "ppbVar4 = &pbStack_d8" identifier = (pointer_expression "&pbStack_d8" & identifier)) ;) (expression_statement "puVar25 = *(undefined4 **)(pcVar28 + 0xc2410);" (assignment_expression "puVar25 = *(undefined4 **)(pcVar28 + 0xc2410)" identifier = (pointer_expression "*(undefined4 **)(pcVar28 + 0xc2410)" * (cast_expression "(undefined4 **)(pcVar28 + 0xc2410)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc2410)" ( (binary_expression "pcVar28 + 0xc2410" identifier + number_literal) ))))) ;) (expression_statement "ppbVar18 = (byte **)*puVar25;" (assignment_expression "ppbVar18 = (byte **)*puVar25" identifier = (cast_expression "(byte **)*puVar25" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*puVar25" * identifier))) ;) (expression_statement "ppbVar12 = ppbVar18;" (assignment_expression "ppbVar12 = ppbVar18" identifier = identifier) ;) (expression_statement "pbStack_d8 = pbVar19;" (assignment_expression "pbStack_d8 = pbVar19" identifier = identifier) ;) (expression_statement "piStack_d4 = param_4;" (assignment_expression "piStack_d4 = param_4" identifier = identifier) ;) (if_statement "if ((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))) goto LAB_0009967c;" if (parenthesized_expression "((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30)))" ( (binary_expression "(*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))" (parenthesized_expression "(*(int *)(iVar7 + 0x28) != 0)" ( (binary_expression "*(int *)(iVar7 + 0x28) != 0" (pointer_expression "*(int *)(iVar7 + 0x28)" * (cast_expression "(int *)(iVar7 + 0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x28)" ( (binary_expression "iVar7 + 0x28" identifier + number_literal) )))) != number_literal) )) || (parenthesized_expression "(99 < *(int *)(iVar7 + 0x30))" ( (binary_expression "99 < *(int *)(iVar7 + 0x30)" number_literal < (pointer_expression "*(int *)(iVar7 + 0x30)" * (cast_expression "(int *)(iVar7 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x30)" ( (binary_expression "iVar7 + 0x30" identifier + number_literal) ))))) ))) )) (goto_statement "goto LAB_0009967c;" goto statement_identifier ;)) (expression_statement "piVar20 = (int *)sqlite3_vmprintf();" (assignment_expression "piVar20 = (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 (piVar20 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;\n  }\n  else {\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }" if (parenthesized_expression "(piVar20 == (int *)0x0)" ( (binary_expression "piVar20 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;\n  }" { (labeled_statement "LAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;" statement_identifier : (expression_statement "*(undefined4 *)(iVar7 + 0x28) = 7;" (assignment_expression "*(undefined4 *)(iVar7 + 0x28) = 7" (pointer_expression "*(undefined4 *)(iVar7 + 0x28)" * (cast_expression "(undefined4 *)(iVar7 + 0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x28)" ( (binary_expression "iVar7 + 0x28" identifier + number_literal) )))) = number_literal) ;)) }) (else_clause "else {\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }" else (compound_statement "{\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }" { (expression_statement "ppbVar4 = *(byte ***)(iVar7 + 0x2c);" (assignment_expression "ppbVar4 = *(byte ***)(iVar7 + 0x2c)" identifier = (pointer_expression "*(byte ***)(iVar7 + 0x2c)" * (cast_expression "(byte ***)(iVar7 + 0x2c)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(iVar7 + 0x2c)" ( (binary_expression "iVar7 + 0x2c" identifier + number_literal) ))))) ;) (if_statement "if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }" if (parenthesized_expression "(ppbVar4 == (byte **)0x0)" ( (binary_expression "ppbVar4 == (byte **)0x0" identifier == (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }" { (expression_statement "pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);" (assignment_expression "pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4)" identifier = (cast_expression "(byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4)" ( (binary_expression "*(int *)(pcVar28 + 0xc1fcc) + 0x53f4" (pointer_expression "*(int *)(pcVar28 + 0xc1fcc)" * (cast_expression "(int *)(pcVar28 + 0xc1fcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0xc1fcc)" ( (binary_expression "pcVar28 + 0xc1fcc" identifier + number_literal) )))) + number_literal) )))) ;) }) (else_clause "else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }" else (compound_statement "{\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }" { (expression_statement "pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);" (assignment_expression "pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48)" identifier = (cast_expression "(byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48)" ( (binary_expression "*(int *)(pcVar28 + 0xc1fcc) + 0x5c48" (pointer_expression "*(int *)(pcVar28 + 0xc1fcc)" * (cast_expression "(int *)(pcVar28 + 0xc1fcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0xc1fcc)" ( (binary_expression "pcVar28 + 0xc1fcc" identifier + number_literal) )))) + number_literal) )))) ;) }))) (expression_statement "piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);" (assignment_expression "piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c)" identifier = (cast_expression "(int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar28 + 0xc1fe0) - 0x741c)" ( (binary_expression "*(int *)(pcVar28 + 0xc1fe0) - 0x741c" (pointer_expression "*(int *)(pcVar28 + 0xc1fe0)" * (cast_expression "(int *)(pcVar28 + 0xc1fe0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0xc1fe0)" ( (binary_expression "pcVar28 + 0xc1fe0" identifier + number_literal) )))) - number_literal) )))) ;) (expression_statement "iVar8 = sqlite3_mprintf();" (assignment_expression "iVar8 = sqlite3_mprintf()" identifier = (call_expression "sqlite3_mprintf()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(int *)(iVar7 + 0x2c) = iVar8;" (assignment_expression "*(int *)(iVar7 + 0x2c) = iVar8" (pointer_expression "*(int *)(iVar7 + 0x2c)" * (cast_expression "(int *)(iVar7 + 0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x2c)" ( (binary_expression "iVar7 + 0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "param_4 = piVar20;" (assignment_expression "param_4 = piVar20" identifier = identifier) ;) (if_statement "if (iVar8 == 0) goto LAB_000996f0;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000996f0;" goto statement_identifier ;)) }))) (expression_statement "*(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1;" (assignment_expression "*(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1" (pointer_expression "*(int *)(iVar7 + 0x30)" * (cast_expression "(int *)(iVar7 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x30)" ( (binary_expression "iVar7 + 0x30" identifier + number_literal) )))) = (binary_expression "*(int *)(iVar7 + 0x30) + 1" (pointer_expression "*(int *)(iVar7 + 0x30)" * (cast_expression "(int *)(iVar7 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x30)" ( (binary_expression "iVar7 + 0x30" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "ppbVar12 = ppbVar4;" (assignment_expression "ppbVar12 = ppbVar4" identifier = identifier) ;) (labeled_statement "LAB_0009967c:\n  ppbVar4 = (byte **)*puVar25;" statement_identifier : (expression_statement "ppbVar4 = (byte **)*puVar25;" (assignment_expression "ppbVar4 = (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 (ppbVar18 == ppbVar4) {\n    return ppbVar4;\n  }" if (parenthesized_expression "(ppbVar18 == ppbVar4)" ( (binary_expression "ppbVar18 == ppbVar4" identifier == identifier) )) (compound_statement "{\n    return ppbVar4;\n  }" { (return_statement "return ppbVar4;" return identifier ;) })) (expression_statement "pcVar28 = *(code **)(pcVar28 + 0xc23f4);" (assignment_expression "pcVar28 = *(code **)(pcVar28 + 0xc23f4)" identifier = (pointer_expression "*(code **)(pcVar28 + 0xc23f4)" * (cast_expression "(code **)(pcVar28 + 0xc23f4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc23f4)" ( (binary_expression "pcVar28 + 0xc23f4" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "piVar20 = *(int **)(pcVar28 + 0xc231c);" (assignment_expression "piVar20 = *(int **)(pcVar28 + 0xc231c)" identifier = (pointer_expression "*(int **)(pcVar28 + 0xc231c)" * (cast_expression "(int **)(pcVar28 + 0xc231c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc231c)" ( (binary_expression "pcVar28 + 0xc231c" identifier + number_literal) ))))) ;) (expression_statement "ppbStack_128 = (byte **)0x0;" (assignment_expression "ppbStack_128 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "iVar7 = *piVar20;" (assignment_expression "iVar7 = *piVar20" identifier = (pointer_expression "*piVar20" * identifier)) ;) (expression_statement "ppbVar4 = (byte **)0x0;" (assignment_expression "ppbVar4 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (if_statement "if (ppbVar12 != (byte **)0x0) {\n    if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }\n  }" if (parenthesized_expression "(ppbVar12 != (byte **)0x0)" ( (binary_expression "ppbVar12 != (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 *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }\n  }" { (if_statement "if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }" if (parenthesized_expression "(*(char *)ppbVar12 == '$')" ( (binary_expression "*(char *)ppbVar12 == '$'" (pointer_expression "*(char *)ppbVar12" * (cast_expression "(char *)ppbVar12" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'$'" ' character ')) )) (compound_statement "{\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }" { (expression_statement "pbVar19 = (byte *)((int)ppbVar12 + 1);" (assignment_expression "pbVar19 = (byte *)((int)ppbVar12 + 1)" identifier = (cast_expression "(byte *)((int)ppbVar12 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppbVar12 + 1)" ( (binary_expression "(int)ppbVar12 + 1" (cast_expression "(int)ppbVar12" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "ppbVar4 = (byte **)FUN_0008b18c();" (assignment_expression "ppbVar4 = (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 "ppbVar12 = ppbStack_128;" (assignment_expression "ppbVar12 = ppbStack_128" identifier = identifier) ;) }) (else_clause "else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }" else (compound_statement "{\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }" { (expression_statement "iVar8 = *(int *)(pcVar28 + 0xc1eec);" (assignment_expression "iVar8 = *(int *)(pcVar28 + 0xc1eec)" identifier = (pointer_expression "*(int *)(pcVar28 + 0xc1eec)" * (cast_expression "(int *)(pcVar28 + 0xc1eec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0xc1eec)" ( (binary_expression "pcVar28 + 0xc1eec" identifier + number_literal) ))))) ;) (expression_statement "*(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';" (assignment_expression "*(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01'" (pointer_expression "*(char *)((int)piVar24 + 0x15)" * (cast_expression "(char *)((int)piVar24 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar24 + 0x15)" ( (binary_expression "(int)piVar24 + 0x15" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(char *)((int)piVar24 + 0x15) + '\x01'" (pointer_expression "*(char *)((int)piVar24 + 0x15)" * (cast_expression "(char *)((int)piVar24 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar24 + 0x15)" ( (binary_expression "(int)piVar24 + 0x15" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + (char_literal "'\x01'" ' escape_sequence '))) ;) (expression_statement "ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);" (assignment_expression "ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414)" identifier = (cast_expression "(byte **)sqlite3_mprintf(iVar8 + -0x7414)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "sqlite3_mprintf(iVar8 + -0x7414)" identifier (argument_list "(iVar8 + -0x7414)" ( (binary_expression "iVar8 + -0x7414" identifier + number_literal) ))))) ;) (if_statement "if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }" if (parenthesized_expression "(ppbVar4 == (byte **)0x0)" ( (binary_expression "ppbVar4 == (byte **)0x0" identifier == (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }" { (expression_statement "(**(code **)(pcVar28 + 0xc2074))(param_4);" (call_expression "(**(code **)(pcVar28 + 0xc2074))(param_4)" (parenthesized_expression "(**(code **)(pcVar28 + 0xc2074))" ( (pointer_expression "**(code **)(pcVar28 + 0xc2074)" * (pointer_expression "*(code **)(pcVar28 + 0xc2074)" * (cast_expression "(code **)(pcVar28 + 0xc2074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc2074)" ( (binary_expression "pcVar28 + 0xc2074" identifier + number_literal) ))))) )) (argument_list "(param_4)" ( identifier ))) ;) (expression_statement "ppbVar4 = (byte **)0x0;" (assignment_expression "ppbVar4 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) }) (else_clause "else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }" else (compound_statement "{\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }" { (expression_statement "pbVar19 = (byte *)0xffffffff;" (assignment_expression "pbVar19 = (byte *)0xffffffff" identifier = (cast_expression "(byte *)0xffffffff" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppbVar12 = ppbVar4;" (assignment_expression "ppbVar12 = ppbVar4" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar28 + 0xc2060))(param_4);" (call_expression "(**(code **)(pcVar28 + 0xc2060))(param_4)" (parenthesized_expression "(**(code **)(pcVar28 + 0xc2060))" ( (pointer_expression "**(code **)(pcVar28 + 0xc2060)" * (pointer_expression "*(code **)(pcVar28 + 0xc2060)" * (cast_expression "(code **)(pcVar28 + 0xc2060)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc2060)" ( (binary_expression "pcVar28 + 0xc2060" identifier + number_literal) ))))) )) (argument_list "(param_4)" ( identifier ))) ;) (expression_statement "(**(code **)(pcVar28 + 0xc1f10))(ppbVar4);" (call_expression "(**(code **)(pcVar28 + 0xc1f10))(ppbVar4)" (parenthesized_expression "(**(code **)(pcVar28 + 0xc1f10))" ( (pointer_expression "**(code **)(pcVar28 + 0xc1f10)" * (pointer_expression "*(code **)(pcVar28 + 0xc1f10)" * (cast_expression "(code **)(pcVar28 + 0xc1f10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc1f10)" ( (binary_expression "pcVar28 + 0xc1f10" identifier + number_literal) ))))) )) (argument_list "(ppbVar4)" ( identifier ))) ;) (expression_statement "ppbVar4 = (byte **)0x0;" (assignment_expression "ppbVar4 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) }))) }))) })) (if_statement "if (iVar7 == *piVar20) {\n    return ppbVar4;\n  }" if (parenthesized_expression "(iVar7 == *piVar20)" ( (binary_expression "iVar7 == *piVar20" identifier == (pointer_expression "*piVar20" * identifier)) )) (compound_statement "{\n    return ppbVar4;\n  }" { (return_statement "return ppbVar4;" return identifier ;) })) (expression_statement "pcVar28 = *(code **)(pcVar28 + 0xc2300);" (assignment_expression "pcVar28 = *(code **)(pcVar28 + 0xc2300)" identifier = (pointer_expression "*(code **)(pcVar28 + 0xc2300)" * (cast_expression "(code **)(pcVar28 + 0xc2300)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc2300)" ( (binary_expression "pcVar28 + 0xc2300" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "ppbVar4 = (byte **)FUN_0008ad48();" (assignment_expression "ppbVar4 = (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 (ppbVar4 != (byte **)0x0) {\n    if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }\n    if (ppbVar4 != (byte **)0x0) {\n                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }\n  }" if (parenthesized_expression "(ppbVar4 != (byte **)0x0)" ( (binary_expression "ppbVar4 != (byte **)0x0" identifier != (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n    if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }\n    if (ppbVar4 != (byte **)0x0) {\n                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }\n  }" { (if_statement "if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }" if (parenthesized_expression "(ppbVar12 == (byte **)&SUB_00000002)" ( (binary_expression "ppbVar12 == (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      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }" { (expression_statement "uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));" (assignment_expression "uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4))" identifier = (call_expression "(**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4))" (parenthesized_expression "(**(code **)(pcVar28 + 0xc1dd4))" ( (pointer_expression "**(code **)(pcVar28 + 0xc1dd4)" * (pointer_expression "*(code **)(pcVar28 + 0xc1dd4)" * (cast_expression "(code **)(pcVar28 + 0xc1dd4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc1dd4)" ( (binary_expression "pcVar28 + 0xc1dd4" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(pbVar19 + 4))" ( (pointer_expression "*(undefined4 *)(pbVar19 + 4)" * (cast_expression "(undefined4 *)(pbVar19 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar19 + 4)" ( (binary_expression "pbVar19 + 4" identifier + number_literal) )))) )))) ;) (expression_statement "ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);" (assignment_expression "ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7)" identifier = (cast_expression "(byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_00099710(ppbVar4,uVar6,0,iVar7)" identifier (argument_list "(ppbVar4,uVar6,0,iVar7)" ( identifier , identifier , number_literal , identifier ))))) ;) }) (else_clause "else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }" else (compound_statement "{\n      ppbVar4 = (byte **)ppbVar4[2];\n    }" { (expression_statement "ppbVar4 = (byte **)ppbVar4[2];" (assignment_expression "ppbVar4 = (byte **)ppbVar4[2]" identifier = (cast_expression "(byte **)ppbVar4[2]" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "ppbVar4[2]" identifier [ number_literal ]))) ;) }))) (if_statement "if (ppbVar4 != (byte **)0x0) {\n                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }" if (parenthesized_expression "(ppbVar4 != (byte **)0x0)" ( (binary_expression "ppbVar4 != (byte **)0x0" identifier != (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }" { comment comment (expression_statement "ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);" (assignment_expression "ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0)" identifier = (cast_expression "(byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0)" (parenthesized_expression "(**(code **)(pcVar28 + 0xc1e3c))" ( (pointer_expression "**(code **)(pcVar28 + 0xc1e3c)" * (pointer_expression "*(code **)(pcVar28 + 0xc1e3c)" * (cast_expression "(code **)(pcVar28 + 0xc1e3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc1e3c)" ( (binary_expression "pcVar28 + 0xc1e3c" identifier + number_literal) ))))) )) (argument_list "(iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0)" ( identifier , (pointer_expression "*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c)" * (cast_expression "(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c)" ( (binary_expression "(uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c" (binary_expression "(uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98)" (binary_expression "(uint)*(byte *)ppbVar4 * 4" (binary_expression "(uint)*(byte *)ppbVar4" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)ppbVar4" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) * number_literal) + (pointer_expression "*(int *)(pcVar28 + 0xc1d98)" * (cast_expression "(int *)(pcVar28 + 0xc1d98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0xc1d98)" ( (binary_expression "pcVar28 + 0xc1d98" identifier + number_literal) ))))) + number_literal) )))) , number_literal , number_literal ))))) ;) (return_statement "return ppbVar12;" return identifier ;) })) })) (return_statement "return ppbVar4;" return identifier ;) (labeled_statement "code_r0x000993b8:\n  piVar13 = ppiVar17[1];" statement_identifier : (expression_statement "piVar13 = ppiVar17[1];" (assignment_expression "piVar13 = ppiVar17[1]" identifier = (subscript_expression "ppiVar17[1]" identifier [ number_literal ])) ;)) (expression_statement "iVar7 = iVar7 + 1;" (assignment_expression "iVar7 = iVar7 + 1" identifier = (binary_expression "iVar7 + 1" identifier + number_literal)) ;) (goto_statement "goto LAB_000993bc;" goto statement_identifier ;) })))
(translation_unit "void fts3Appendf(int *pRc,char **pz,char *zFormat,...)\n\n{\n  bool bVar1;\n  JsonParse *pJVar2;\n  undefined4 uVar3;\n  int iVar4;\n  undefined4 uVar5;\n  int iVar6;\n  u32 uVar7;\n  sqlite3_value ***pppsVar8;\n  JsonNode *pJVar9;\n  char *pcVar10;\n  int iVar11;\n  u32 uVar12;\n  byte bVar14;\n  u32 *puVar13;\n  sqlite3_context *pCtx;\n  JsonParse *pJVar15;\n  sqlite3_value ***pppsVar16;\n  sqlite3_value **pApnd;\n  sqlite3_value **argv;\n  u32 *in_a3;\n  u32 uVar17;\n  char cVar18;\n  int *piVar19;\n  JsonParse *pJVar20;\n  JsonParse *pJVar21;\n  JsonParse *pJVar22;\n  u32 *unaff_s1;\n  int *piVar23;\n  undefined4 *puVar24;\n  JsonParse *unaff_s2;\n  uint uVar25;\n  char **unaff_s3;\n  int in_t9;\n  code *pcVar26;\n  code *pcVar27;\n  double dVar28;\n  u32 *puStackX_c;\n  sqlite3_value ***pppsStack_128;\n  sqlite3_context *psStack_124;\n  int iStack_120;\n  undefined4 *puStack_11c;\n  JsonParse *pJStack_118;\n  code *pcStack_114;\n  code *pcStack_100;\n  sqlite3_value ***pppsStack_f8;\n  sqlite3_value ***pppsStack_f4;\n  JsonParse *pJStack_ec;\n  JsonParse *pJStack_e8;\n  code *pcStack_e4;\n  sqlite3_value **ppsStack_d8;\n  u32 *puStack_d4;\n  code *pcStack_d0;\n  JsonParse JStack_c8;\n  undefined4 uStack_a8;\n  undefined4 uStack_a4;\n  undefined1 uStack_a0;\n  int iStack_9c;\n  JsonParse *pJStack_98;\n  int *piStack_94;\n  int iStack_90;\n  JsonParse *pJStack_8c;\n  JsonParse *pJStack_88;\n  code *pcStack_84;\n  code *pcStack_70;\n  u32 uStack_64;\n  u32 uStack_60;\n  JsonNode *pJStack_5c;\n  int *piStack_58;\n  u32 *puStack_54;\n  JsonParse *pJStack_50;\n  char **ppcStack_4c;\n  va_list ap;\n  \n  piVar19 = *(int **)(in_t9 + 0xc2b00);\n  iVar11 = *piVar19;\n  pJVar21 = (JsonParse *)pRc;\n  pJVar22 = (JsonParse *)pz;\n  puStack_54 = unaff_s1;\n  ppcStack_4c = unaff_s3;\n  puStackX_c = in_a3;\n  if (*pRc == 0) {\n    pJVar22 = (JsonParse *)&puStackX_c;\n    pJVar2 = (JsonParse *)sqlite3_vmprintf(zFormat,pJVar22);\n    if (pJVar2 == (JsonParse *)0x0) {\nLAB_00099014:\n      unaff_s2 = (JsonParse *)0x0;\n      *pRc = 7;\n      pJVar21 = (JsonParse *)*pz;\n    }\n    else {\n      pJVar21 = (JsonParse *)*pz;\n      unaff_s2 = pJVar2;\n      if (pJVar21 != (JsonParse *)0x0) {\n        zFormat = (char *)pJVar2;\n        unaff_s2 = (JsonParse *)sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624));\n        pJVar22 = pJVar21;\n        (**(code **)(in_t9 + 0xc26f4))(pJVar2);\n        if (unaff_s2 == (JsonParse *)0x0) goto LAB_00099014;\n        pJVar21 = (JsonParse *)*pz;\n      }\n    }\n    (**(code **)(in_t9 + 0xc26f4))();\n    *pz = (char *)unaff_s2;\n    puStack_54 = (u32 *)pRc;\n    ppcStack_4c = pz;\n  }\n  if (iVar11 == *piVar19) {\n    return;\n  }\n  pcVar26 = *(code **)(in_t9 + 0xc2ae4);\n  (*pcVar26)();\n  pcStack_70 = pcVar26 + 0xca57c;\n  piVar23 = *(int **)(pcVar26 + 0xc29f8);\n  uStack_64 = 0;\n  pJStack_5c = (JsonNode *)*piVar23;\n  piStack_58 = piVar19;\n  pJStack_50 = unaff_s2;\n  uVar3 = (**(code **)(pcVar26 + 0xc2694))();\n  iVar11 = (**(code **)(pcStack_70 + -0x7f9c))(((JsonParse *)zFormat)->nNode);\n  iVar4 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nNode);\n  pJVar2 = pJVar21;\n  if (pJVar22 == (JsonParse *)0x2) {\n    uVar5 = (**(code **)(pcStack_70 + -0x7ed0))(pJVar21);\n    in_a3 = &uStack_60;\n    uStack_60 = 0;\n    (**(code **)(pcStack_70 + -0x7d60))(uVar5,0x3ec,0xffffffff);\n    if (uStack_60 == 0) {\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }\n    else {\n      iVar6 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nAlloc);\n      if ((iVar11 != 0) && (iVar6 == 4)) {\n        puVar13 = (u32 *)(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc);\n        uStack_64 = *puVar13;\n        uVar17 = (*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))\n                           (uVar3,iVar11,iVar4 + 1,uStack_64);\n        if (uStack_64 == uVar17) {\n          (**(code **)(pcStack_70 + -0x7e40))\n                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }\n  }\n  else {\n    if (iVar11 == 0) {\nLAB_000990f4:\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n      if (uStack_64 != 0) {\nLAB_000990fc:\n        in_a3 = (u32 *)0xffffffff;\n        pJVar15 = (JsonParse *)&uStack_64;\n        (**(code **)(pcStack_70 + -0x7e28))(pJVar21,pJVar15,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar4 = (*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24))(uVar3,iVar11,iVar4 + 1);\n      if (iVar4 != 0) {\n        uStack_64 = *(u32 *)(iVar4 + 8);\n        goto LAB_000990f4;\n      }\n      uStack_64 = 0;\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n    }\n    zFormat = sqlite3_mprintf((char *)(iVar4 + -0x7478),iVar11);\n    pJVar15 = (JsonParse *)zFormat;\n    (**(code **)(pcStack_70 + -0x7e40))(pJVar21,zFormat,0xffffffff);\n    pJVar2 = (JsonParse *)zFormat;\n    (**(code **)(pcStack_70 + -0x7f90))();\n  }\nLAB_00099118:\n  if (pJStack_5c == (JsonNode *)*piVar23) {\n    return;\n  }\n  pcVar26 = *(code **)(pcStack_70 + -0x7ba0);\n  pcVar27 = rtreeBestIndex;\n  (*pcVar26)();\n  pJStack_8c = pJVar21;\n  piStack_94 = piVar23;\n  iStack_90 = iVar11;\n  pJVar21 = &JStack_c8;\n  pcStack_d0 = pcVar26 + 0xca310;\n  pcStack_84 = pcVar27;\n  pJStack_88 = pJVar22;\n  pJStack_98 = (JsonParse *)zFormat;\n  piVar19 = *(int **)(pcVar26 + 0xc278c);\n  uVar17 = pJVar15->nNode;\n  JStack_c8.nNode = 0;\n  JStack_c8.nAlloc = 0;\n  JStack_c8.aNode = (JsonNode *)0x0;\n  JStack_c8.zJson = (char *)0x0;\n  JStack_c8.aUp = (u32 *)0x0;\n  JStack_c8.oom = '\0';\n  JStack_c8.nErr = '\0';\n  JStack_c8.iDepth = 0;\n  JStack_c8.nJson = 0;\n  JStack_c8.iHold = 0;\n  uStack_a8 = 0;\n  uStack_a4 = 0;\n  uStack_a0 = 0;\n  iStack_9c = *piVar19;\n  pApnd = (sqlite3_value **)(uVar17 * 2);\n  if ((int)uVar17 < 1) {\n    pJVar22 = (JsonParse *)0x0;\n    pJVar15->oom = '\0';\n    pJVar15->nErr = '\0';\n    pJVar15->iDepth = 2;\n    pJVar15->iHold = 1;\nLAB_00099480:\n    puVar13 = pJVar2[1].aUp;\n    uVar25._0_1_ = pJVar2[1].oom;\n    uVar25._1_1_ = pJVar2[1].nErr;\n    uVar25._2_2_ = pJVar2[1].iDepth;\n    pJVar21 = (JsonParse *)((int)puVar13 >> ((uint)pJVar22 & 0x1f));\n    pJVar20 = pJVar21;\n    pJVar2 = (JsonParse *)\n             (((int)puVar13 << 1) << (~(uint)pJVar22 & 0x1f) | uVar25 >> ((uint)pJVar22 & 0x1f));\n    if (((uint)pJVar22 & 0x20) != 0) {\n      pJVar20 = (JsonParse *)((int)puVar13 >> 0x1f);\n      pJVar2 = pJVar21;\n    }\n    pJVar21 = pJVar2;\n    dVar28 = (double)(**(code **)(pcStack_d0 + -0x7f18))(pJVar20);\n    pJVar15[1].aUp = &pJVar20->nNode;\n    *(JsonParse **)&pJVar15[1].oom = pJVar2;\n    *(double *)&pJVar15[1].aNode = dVar28 * *(double *)(*(int *)(pcStack_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    uVar12 = pJVar15->nAlloc;\n    bVar1 = false;\n    uVar7 = uVar12;\n    do {\n      pcVar10 = (char *)(uVar7 + 4);\n      uVar7 = uVar7 + 0xc;\n      if (*pcVar10 == '@') {\n        bVar1 = true;\n      }\n    } while (uVar17 * 0xc + uVar12 != uVar7);\n    in_a3 = (u32 *)0x0;\n    pJVar20 = (JsonParse *)0x0;\n    iVar11 = 0;\nLAB_000993bc:\n    piVar23 = (int *)((int)in_a3 + uVar12);\n    if (!bVar1) {\n      if (*(char *)((int)piVar23 + 5) == '\0') goto LAB_0009939c;\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\n      if (iVar4 != 0) goto LAB_000993d8;\n      if (bVar14 != 2) goto LAB_00099394;\n      if (iVar11 == 0) {\n        iVar4 = 0;\n      }\n      else {\n        iVar6 = 0;\n        do {\n          iVar4 = iVar6 + 1;\n          pJVar15->aUp[iVar6 * 2] = 0;\n          *(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;\n          iVar6 = iVar4;\n        } while (iVar4 != iVar11);\n        iVar4 = iVar4 * 8;\n      }\n      in_a3 = (u32 *)0x1;\n      pJVar15->oom = '\0';\n      pJVar15->nErr = '\0';\n      pJVar15->iDepth = 1;\n      pJVar21 = *(JsonParse **)(pcVar26 + 0xc23f4);\n      iVar11 = pJVar21[-0xffffffff000003bd].nJson;\n      uVar17 = pJVar21[-0xffffffff000003bd].iHold;\n      *(undefined4 *)((int)pJVar15->aUp + iVar4) = 1;\n      pApnd = (sqlite3_value **)0x0;\n      *(undefined1 *)((int)pJVar15->aUp + iVar4 + 4) = 1;\n      pJVar15[1].aNode = (JsonNode *)iVar11;\n      pJVar15[1].zJson = (char *)uVar17;\n      pJVar15[1].oom = '\0';\n      pJVar15[1].nErr = '\0';\n      pJVar15[1].iDepth = 1;\n      pJVar15[1].aUp = (u32 *)0x0;\n      pJVar15[1].nJson = 1;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar23 + 5) == '\0') {\nLAB_0009939c:\n      pJVar22 = pJVar20;\n      if ((int)uVar17 <= iVar11 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\nLAB_000993d8:\n      if ((iVar4 < 1) || ((int)(uint)pJVar2->nErr < iVar4)) {\nLAB_00099394:\n        cVar18 = 'F';\n        if (bVar14 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar14 == 8) {\n        cVar18 = 'B';\n      }\n      else if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }\n      puVar13 = pJVar15->aUp;\n      pJVar22 = (JsonParse *)((int)&pJVar20->nNode + 2);\n      *(char *)((int)&pJVar20->nNode + (int)&JStack_c8.nNode) = cVar18;\n      *(char *)((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1)) = (char)*piVar23 + '/';\n      puVar13[iVar11 * 2] = (int)pJVar22 >> 1;\n      *(undefined1 *)(pJVar15->aUp + iVar11 * 2 + 1) = 1;\n      uVar17 = pJVar15->nNode;\n      pJVar20 = pJVar22;\n      if ((int)uVar17 <= iVar11 + 1) {\nLAB_00099470:\n        pApnd = (sqlite3_value **)(iVar11 + 1);\n        pJVar15->oom = '\0';\n        pJVar15->nErr = '\0';\n        pJVar15->iDepth = 2;\n        pJVar15->iHold = 1;\n        pJVar20 = pJVar22;\n        if (pJVar22 == (JsonParse *)0x0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    in_a3 = in_a3 + 3;\n    if ((int)pJVar20 < 0x28) goto code_r0x000993b8;\n    pJVar15->oom = '\0';\n    pJVar15->nErr = '\0';\n    pJVar15->iDepth = 2;\n    pJVar15->iHold = 1;\nLAB_00099544:\n    pApnd = (sqlite3_value **)(iVar11 + 1);\n    pcVar10 = sqlite3_mprintf((char *)(*(int *)(pcVar26 + 0xc2348) + 0x71f4));\n    pJVar15->nJson = (int)pcVar10;\n    if (pcVar10 != (char *)0x0) {\n      pJVar22 = (JsonParse *)((int)pJVar20 >> 1);\n      goto LAB_00099480;\n    }\n  }\nLAB_000994e0:\n  if (iStack_9c == *piVar19) {\n    return;\n  }\n  pcVar26 = *(code **)(pcStack_d0 + -0x7ba0);\n  pcVar27 = rtreeCheckAppendMsg;\n  iVar11 = iStack_9c;\n  (*pcVar26)();\n  pcStack_100 = pcVar26 + 0xc9f94;\n  pppsVar8 = &ppsStack_d8;\n  puVar24 = *(undefined4 **)(pcVar26 + 0xc2410);\n  pppsStack_f4 = (sqlite3_value ***)*puVar24;\n  pppsVar16 = pppsStack_f4;\n  pppsStack_f8 = pppsVar8;\n  pJStack_ec = pJVar20;\n  pJStack_e8 = pJVar15;\n  pcStack_e4 = pcVar27;\n  ppsStack_d8 = pApnd;\n  puStack_d4 = in_a3;\n  if ((*(int *)(iVar11 + 0x28) == 0) && (*(int *)(iVar11 + 0x30) < 100)) {\n    puVar13 = (u32 *)sqlite3_vmprintf((char *)pJVar21,pppsVar8);\n    if (puVar13 == (u32 *)0x0) {\nLAB_000996f0:\n      *(undefined4 *)(iVar11 + 0x28) = 7;\n    }\n    else {\n      pppsVar8 = *(sqlite3_value ****)(iVar11 + 0x2c);\n      if (pppsVar8 == (sqlite3_value ***)0x0) {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4);\n      }\n      else {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48);\n      }\n      pJVar21 = (JsonParse *)(*(int *)(pcStack_100 + -0x7fb4) + -0x741c);\n      pcVar10 = sqlite3_mprintf((char *)pJVar21);\n      *(char **)(iVar11 + 0x2c) = pcVar10;\n      in_a3 = puVar13;\n      if (pcVar10 == (char *)0x0) goto LAB_000996f0;\n    }\n    *(int *)(iVar11 + 0x30) = *(int *)(iVar11 + 0x30) + 1;\n    pppsVar16 = pppsVar8;\n  }\n  if (pppsStack_f4 == (sqlite3_value ***)*puVar24) {\n    return;\n  }\n  pcVar26 = *(code **)(pcStack_100 + -0x7ba0);\n  pcVar27 = jsonLookup;\n  (*pcVar26)();\n  piVar19 = *(int **)(pcVar26 + 0xc231c);\n  pppsStack_128 = (sqlite3_value ***)0x0;\n  psStack_124 = (sqlite3_context *)*piVar19;\n  argv = pApnd;\n  iStack_120 = iVar11;\n  puStack_11c = puVar24;\n  pJStack_118 = pJVar2;\n  pcStack_114 = pcVar27;\n  if (pppsVar16 != (sqlite3_value ***)0x0) {\n    if (*(char *)pppsVar16 == '$') {\n      argv = (sqlite3_value **)((int)pppsVar16 + 1);\n      jsonLookupStep(pJVar21,0,(char *)argv,(int *)pApnd,(char **)&pppsStack_128);\n      pppsVar16 = pppsStack_128;\n      if (pppsStack_128 == (sqlite3_value ***)0x0) goto LAB_000997bc;\n    }\n    pppsStack_128 = pppsVar16;\n    iVar11 = *(int *)(pcVar26 + 0xc1eec);\n    pJVar21->nErr = pJVar21->nErr + '\x01';\n    pppsVar16 = pppsStack_128;\n    pppsVar8 = (sqlite3_value ***)sqlite3_mprintf((char *)(iVar11 + -0x7414));\n    if (pppsVar8 == (sqlite3_value ***)0x0) {\n      (**(code **)(pcVar26 + 0xc2074))(in_a3);\n    }\n    else {\n      argv = (sqlite3_value **)0xffffffff;\n      pppsVar16 = pppsVar8;\n      (**(code **)(pcVar26 + 0xc2060))(in_a3);\n      (**(code **)(pcVar26 + 0xc1f10))(pppsVar8);\n    }\n  }\nLAB_000997bc:\n  if (psStack_124 == (sqlite3_context *)*piVar19) {\n    return;\n  }\n  pcVar26 = *(code **)(pcVar26 + 0xc2300);\n  pCtx = psStack_124;\n  (*pcVar26)();\n  pJVar21 = jsonParseCached(pCtx,argv,pCtx);\n  if (pJVar21 != (JsonParse *)0x0) {\n    if (pppsVar16 == (sqlite3_value ***)0x2) {\n      pcVar10 = (char *)(**(code **)(pcVar26 + 0xc1dd4))(argv[1]);\n      pJVar9 = jsonLookup(pJVar21,pcVar10,(int *)0x0,pCtx);\n    }\n    else {\n      pJVar9 = pJVar21->aNode;\n    }\n    if (pJVar9 != (JsonNode *)0x0) {\n                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (**(code **)(pcVar26 + 0xc1e3c))\n                (pCtx,*(undefined4 *)\n                       ((uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c),0xffffffff,\n                 0);\n      return;\n    }\n  }\n  return;\ncode_r0x000993b8:\n  uVar12 = pJVar15->nAlloc;\n  iVar11 = iVar11 + 1;\n  goto LAB_000993bc;\n}\n\n" (function_definition "void fts3Appendf(int *pRc,char **pz,char *zFormat,...)\n\n{\n  bool bVar1;\n  JsonParse *pJVar2;\n  undefined4 uVar3;\n  int iVar4;\n  undefined4 uVar5;\n  int iVar6;\n  u32 uVar7;\n  sqlite3_value ***pppsVar8;\n  JsonNode *pJVar9;\n  char *pcVar10;\n  int iVar11;\n  u32 uVar12;\n  byte bVar14;\n  u32 *puVar13;\n  sqlite3_context *pCtx;\n  JsonParse *pJVar15;\n  sqlite3_value ***pppsVar16;\n  sqlite3_value **pApnd;\n  sqlite3_value **argv;\n  u32 *in_a3;\n  u32 uVar17;\n  char cVar18;\n  int *piVar19;\n  JsonParse *pJVar20;\n  JsonParse *pJVar21;\n  JsonParse *pJVar22;\n  u32 *unaff_s1;\n  int *piVar23;\n  undefined4 *puVar24;\n  JsonParse *unaff_s2;\n  uint uVar25;\n  char **unaff_s3;\n  int in_t9;\n  code *pcVar26;\n  code *pcVar27;\n  double dVar28;\n  u32 *puStackX_c;\n  sqlite3_value ***pppsStack_128;\n  sqlite3_context *psStack_124;\n  int iStack_120;\n  undefined4 *puStack_11c;\n  JsonParse *pJStack_118;\n  code *pcStack_114;\n  code *pcStack_100;\n  sqlite3_value ***pppsStack_f8;\n  sqlite3_value ***pppsStack_f4;\n  JsonParse *pJStack_ec;\n  JsonParse *pJStack_e8;\n  code *pcStack_e4;\n  sqlite3_value **ppsStack_d8;\n  u32 *puStack_d4;\n  code *pcStack_d0;\n  JsonParse JStack_c8;\n  undefined4 uStack_a8;\n  undefined4 uStack_a4;\n  undefined1 uStack_a0;\n  int iStack_9c;\n  JsonParse *pJStack_98;\n  int *piStack_94;\n  int iStack_90;\n  JsonParse *pJStack_8c;\n  JsonParse *pJStack_88;\n  code *pcStack_84;\n  code *pcStack_70;\n  u32 uStack_64;\n  u32 uStack_60;\n  JsonNode *pJStack_5c;\n  int *piStack_58;\n  u32 *puStack_54;\n  JsonParse *pJStack_50;\n  char **ppcStack_4c;\n  va_list ap;\n  \n  piVar19 = *(int **)(in_t9 + 0xc2b00);\n  iVar11 = *piVar19;\n  pJVar21 = (JsonParse *)pRc;\n  pJVar22 = (JsonParse *)pz;\n  puStack_54 = unaff_s1;\n  ppcStack_4c = unaff_s3;\n  puStackX_c = in_a3;\n  if (*pRc == 0) {\n    pJVar22 = (JsonParse *)&puStackX_c;\n    pJVar2 = (JsonParse *)sqlite3_vmprintf(zFormat,pJVar22);\n    if (pJVar2 == (JsonParse *)0x0) {\nLAB_00099014:\n      unaff_s2 = (JsonParse *)0x0;\n      *pRc = 7;\n      pJVar21 = (JsonParse *)*pz;\n    }\n    else {\n      pJVar21 = (JsonParse *)*pz;\n      unaff_s2 = pJVar2;\n      if (pJVar21 != (JsonParse *)0x0) {\n        zFormat = (char *)pJVar2;\n        unaff_s2 = (JsonParse *)sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624));\n        pJVar22 = pJVar21;\n        (**(code **)(in_t9 + 0xc26f4))(pJVar2);\n        if (unaff_s2 == (JsonParse *)0x0) goto LAB_00099014;\n        pJVar21 = (JsonParse *)*pz;\n      }\n    }\n    (**(code **)(in_t9 + 0xc26f4))();\n    *pz = (char *)unaff_s2;\n    puStack_54 = (u32 *)pRc;\n    ppcStack_4c = pz;\n  }\n  if (iVar11 == *piVar19) {\n    return;\n  }\n  pcVar26 = *(code **)(in_t9 + 0xc2ae4);\n  (*pcVar26)();\n  pcStack_70 = pcVar26 + 0xca57c;\n  piVar23 = *(int **)(pcVar26 + 0xc29f8);\n  uStack_64 = 0;\n  pJStack_5c = (JsonNode *)*piVar23;\n  piStack_58 = piVar19;\n  pJStack_50 = unaff_s2;\n  uVar3 = (**(code **)(pcVar26 + 0xc2694))();\n  iVar11 = (**(code **)(pcStack_70 + -0x7f9c))(((JsonParse *)zFormat)->nNode);\n  iVar4 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nNode);\n  pJVar2 = pJVar21;\n  if (pJVar22 == (JsonParse *)0x2) {\n    uVar5 = (**(code **)(pcStack_70 + -0x7ed0))(pJVar21);\n    in_a3 = &uStack_60;\n    uStack_60 = 0;\n    (**(code **)(pcStack_70 + -0x7d60))(uVar5,0x3ec,0xffffffff);\n    if (uStack_60 == 0) {\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }\n    else {\n      iVar6 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nAlloc);\n      if ((iVar11 != 0) && (iVar6 == 4)) {\n        puVar13 = (u32 *)(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc);\n        uStack_64 = *puVar13;\n        uVar17 = (*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))\n                           (uVar3,iVar11,iVar4 + 1,uStack_64);\n        if (uStack_64 == uVar17) {\n          (**(code **)(pcStack_70 + -0x7e40))\n                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }\n  }\n  else {\n    if (iVar11 == 0) {\nLAB_000990f4:\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n      if (uStack_64 != 0) {\nLAB_000990fc:\n        in_a3 = (u32 *)0xffffffff;\n        pJVar15 = (JsonParse *)&uStack_64;\n        (**(code **)(pcStack_70 + -0x7e28))(pJVar21,pJVar15,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar4 = (*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24))(uVar3,iVar11,iVar4 + 1);\n      if (iVar4 != 0) {\n        uStack_64 = *(u32 *)(iVar4 + 8);\n        goto LAB_000990f4;\n      }\n      uStack_64 = 0;\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n    }\n    zFormat = sqlite3_mprintf((char *)(iVar4 + -0x7478),iVar11);\n    pJVar15 = (JsonParse *)zFormat;\n    (**(code **)(pcStack_70 + -0x7e40))(pJVar21,zFormat,0xffffffff);\n    pJVar2 = (JsonParse *)zFormat;\n    (**(code **)(pcStack_70 + -0x7f90))();\n  }\nLAB_00099118:\n  if (pJStack_5c == (JsonNode *)*piVar23) {\n    return;\n  }\n  pcVar26 = *(code **)(pcStack_70 + -0x7ba0);\n  pcVar27 = rtreeBestIndex;\n  (*pcVar26)();\n  pJStack_8c = pJVar21;\n  piStack_94 = piVar23;\n  iStack_90 = iVar11;\n  pJVar21 = &JStack_c8;\n  pcStack_d0 = pcVar26 + 0xca310;\n  pcStack_84 = pcVar27;\n  pJStack_88 = pJVar22;\n  pJStack_98 = (JsonParse *)zFormat;\n  piVar19 = *(int **)(pcVar26 + 0xc278c);\n  uVar17 = pJVar15->nNode;\n  JStack_c8.nNode = 0;\n  JStack_c8.nAlloc = 0;\n  JStack_c8.aNode = (JsonNode *)0x0;\n  JStack_c8.zJson = (char *)0x0;\n  JStack_c8.aUp = (u32 *)0x0;\n  JStack_c8.oom = '\0';\n  JStack_c8.nErr = '\0';\n  JStack_c8.iDepth = 0;\n  JStack_c8.nJson = 0;\n  JStack_c8.iHold = 0;\n  uStack_a8 = 0;\n  uStack_a4 = 0;\n  uStack_a0 = 0;\n  iStack_9c = *piVar19;\n  pApnd = (sqlite3_value **)(uVar17 * 2);\n  if ((int)uVar17 < 1) {\n    pJVar22 = (JsonParse *)0x0;\n    pJVar15->oom = '\0';\n    pJVar15->nErr = '\0';\n    pJVar15->iDepth = 2;\n    pJVar15->iHold = 1;\nLAB_00099480:\n    puVar13 = pJVar2[1].aUp;\n    uVar25._0_1_ = pJVar2[1].oom;\n    uVar25._1_1_ = pJVar2[1].nErr;\n    uVar25._2_2_ = pJVar2[1].iDepth;\n    pJVar21 = (JsonParse *)((int)puVar13 >> ((uint)pJVar22 & 0x1f));\n    pJVar20 = pJVar21;\n    pJVar2 = (JsonParse *)\n             (((int)puVar13 << 1) << (~(uint)pJVar22 & 0x1f) | uVar25 >> ((uint)pJVar22 & 0x1f));\n    if (((uint)pJVar22 & 0x20) != 0) {\n      pJVar20 = (JsonParse *)((int)puVar13 >> 0x1f);\n      pJVar2 = pJVar21;\n    }\n    pJVar21 = pJVar2;\n    dVar28 = (double)(**(code **)(pcStack_d0 + -0x7f18))(pJVar20);\n    pJVar15[1].aUp = &pJVar20->nNode;\n    *(JsonParse **)&pJVar15[1].oom = pJVar2;\n    *(double *)&pJVar15[1].aNode = dVar28 * *(double *)(*(int *)(pcStack_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    uVar12 = pJVar15->nAlloc;\n    bVar1 = false;\n    uVar7 = uVar12;\n    do {\n      pcVar10 = (char *)(uVar7 + 4);\n      uVar7 = uVar7 + 0xc;\n      if (*pcVar10 == '@') {\n        bVar1 = true;\n      }\n    } while (uVar17 * 0xc + uVar12 != uVar7);\n    in_a3 = (u32 *)0x0;\n    pJVar20 = (JsonParse *)0x0;\n    iVar11 = 0;\nLAB_000993bc:\n    piVar23 = (int *)((int)in_a3 + uVar12);\n    if (!bVar1) {\n      if (*(char *)((int)piVar23 + 5) == '\0') goto LAB_0009939c;\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\n      if (iVar4 != 0) goto LAB_000993d8;\n      if (bVar14 != 2) goto LAB_00099394;\n      if (iVar11 == 0) {\n        iVar4 = 0;\n      }\n      else {\n        iVar6 = 0;\n        do {\n          iVar4 = iVar6 + 1;\n          pJVar15->aUp[iVar6 * 2] = 0;\n          *(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;\n          iVar6 = iVar4;\n        } while (iVar4 != iVar11);\n        iVar4 = iVar4 * 8;\n      }\n      in_a3 = (u32 *)0x1;\n      pJVar15->oom = '\0';\n      pJVar15->nErr = '\0';\n      pJVar15->iDepth = 1;\n      pJVar21 = *(JsonParse **)(pcVar26 + 0xc23f4);\n      iVar11 = pJVar21[-0xffffffff000003bd].nJson;\n      uVar17 = pJVar21[-0xffffffff000003bd].iHold;\n      *(undefined4 *)((int)pJVar15->aUp + iVar4) = 1;\n      pApnd = (sqlite3_value **)0x0;\n      *(undefined1 *)((int)pJVar15->aUp + iVar4 + 4) = 1;\n      pJVar15[1].aNode = (JsonNode *)iVar11;\n      pJVar15[1].zJson = (char *)uVar17;\n      pJVar15[1].oom = '\0';\n      pJVar15[1].nErr = '\0';\n      pJVar15[1].iDepth = 1;\n      pJVar15[1].aUp = (u32 *)0x0;\n      pJVar15[1].nJson = 1;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar23 + 5) == '\0') {\nLAB_0009939c:\n      pJVar22 = pJVar20;\n      if ((int)uVar17 <= iVar11 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\nLAB_000993d8:\n      if ((iVar4 < 1) || ((int)(uint)pJVar2->nErr < iVar4)) {\nLAB_00099394:\n        cVar18 = 'F';\n        if (bVar14 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar14 == 8) {\n        cVar18 = 'B';\n      }\n      else if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }\n      puVar13 = pJVar15->aUp;\n      pJVar22 = (JsonParse *)((int)&pJVar20->nNode + 2);\n      *(char *)((int)&pJVar20->nNode + (int)&JStack_c8.nNode) = cVar18;\n      *(char *)((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1)) = (char)*piVar23 + '/';\n      puVar13[iVar11 * 2] = (int)pJVar22 >> 1;\n      *(undefined1 *)(pJVar15->aUp + iVar11 * 2 + 1) = 1;\n      uVar17 = pJVar15->nNode;\n      pJVar20 = pJVar22;\n      if ((int)uVar17 <= iVar11 + 1) {\nLAB_00099470:\n        pApnd = (sqlite3_value **)(iVar11 + 1);\n        pJVar15->oom = '\0';\n        pJVar15->nErr = '\0';\n        pJVar15->iDepth = 2;\n        pJVar15->iHold = 1;\n        pJVar20 = pJVar22;\n        if (pJVar22 == (JsonParse *)0x0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    in_a3 = in_a3 + 3;\n    if ((int)pJVar20 < 0x28) goto code_r0x000993b8;\n    pJVar15->oom = '\0';\n    pJVar15->nErr = '\0';\n    pJVar15->iDepth = 2;\n    pJVar15->iHold = 1;\nLAB_00099544:\n    pApnd = (sqlite3_value **)(iVar11 + 1);\n    pcVar10 = sqlite3_mprintf((char *)(*(int *)(pcVar26 + 0xc2348) + 0x71f4));\n    pJVar15->nJson = (int)pcVar10;\n    if (pcVar10 != (char *)0x0) {\n      pJVar22 = (JsonParse *)((int)pJVar20 >> 1);\n      goto LAB_00099480;\n    }\n  }\nLAB_000994e0:\n  if (iStack_9c == *piVar19) {\n    return;\n  }\n  pcVar26 = *(code **)(pcStack_d0 + -0x7ba0);\n  pcVar27 = rtreeCheckAppendMsg;\n  iVar11 = iStack_9c;\n  (*pcVar26)();\n  pcStack_100 = pcVar26 + 0xc9f94;\n  pppsVar8 = &ppsStack_d8;\n  puVar24 = *(undefined4 **)(pcVar26 + 0xc2410);\n  pppsStack_f4 = (sqlite3_value ***)*puVar24;\n  pppsVar16 = pppsStack_f4;\n  pppsStack_f8 = pppsVar8;\n  pJStack_ec = pJVar20;\n  pJStack_e8 = pJVar15;\n  pcStack_e4 = pcVar27;\n  ppsStack_d8 = pApnd;\n  puStack_d4 = in_a3;\n  if ((*(int *)(iVar11 + 0x28) == 0) && (*(int *)(iVar11 + 0x30) < 100)) {\n    puVar13 = (u32 *)sqlite3_vmprintf((char *)pJVar21,pppsVar8);\n    if (puVar13 == (u32 *)0x0) {\nLAB_000996f0:\n      *(undefined4 *)(iVar11 + 0x28) = 7;\n    }\n    else {\n      pppsVar8 = *(sqlite3_value ****)(iVar11 + 0x2c);\n      if (pppsVar8 == (sqlite3_value ***)0x0) {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4);\n      }\n      else {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48);\n      }\n      pJVar21 = (JsonParse *)(*(int *)(pcStack_100 + -0x7fb4) + -0x741c);\n      pcVar10 = sqlite3_mprintf((char *)pJVar21);\n      *(char **)(iVar11 + 0x2c) = pcVar10;\n      in_a3 = puVar13;\n      if (pcVar10 == (char *)0x0) goto LAB_000996f0;\n    }\n    *(int *)(iVar11 + 0x30) = *(int *)(iVar11 + 0x30) + 1;\n    pppsVar16 = pppsVar8;\n  }\n  if (pppsStack_f4 == (sqlite3_value ***)*puVar24) {\n    return;\n  }\n  pcVar26 = *(code **)(pcStack_100 + -0x7ba0);\n  pcVar27 = jsonLookup;\n  (*pcVar26)();\n  piVar19 = *(int **)(pcVar26 + 0xc231c);\n  pppsStack_128 = (sqlite3_value ***)0x0;\n  psStack_124 = (sqlite3_context *)*piVar19;\n  argv = pApnd;\n  iStack_120 = iVar11;\n  puStack_11c = puVar24;\n  pJStack_118 = pJVar2;\n  pcStack_114 = pcVar27;\n  if (pppsVar16 != (sqlite3_value ***)0x0) {\n    if (*(char *)pppsVar16 == '$') {\n      argv = (sqlite3_value **)((int)pppsVar16 + 1);\n      jsonLookupStep(pJVar21,0,(char *)argv,(int *)pApnd,(char **)&pppsStack_128);\n      pppsVar16 = pppsStack_128;\n      if (pppsStack_128 == (sqlite3_value ***)0x0) goto LAB_000997bc;\n    }\n    pppsStack_128 = pppsVar16;\n    iVar11 = *(int *)(pcVar26 + 0xc1eec);\n    pJVar21->nErr = pJVar21->nErr + '\x01';\n    pppsVar16 = pppsStack_128;\n    pppsVar8 = (sqlite3_value ***)sqlite3_mprintf((char *)(iVar11 + -0x7414));\n    if (pppsVar8 == (sqlite3_value ***)0x0) {\n      (**(code **)(pcVar26 + 0xc2074))(in_a3);\n    }\n    else {\n      argv = (sqlite3_value **)0xffffffff;\n      pppsVar16 = pppsVar8;\n      (**(code **)(pcVar26 + 0xc2060))(in_a3);\n      (**(code **)(pcVar26 + 0xc1f10))(pppsVar8);\n    }\n  }\nLAB_000997bc:\n  if (psStack_124 == (sqlite3_context *)*piVar19) {\n    return;\n  }\n  pcVar26 = *(code **)(pcVar26 + 0xc2300);\n  pCtx = psStack_124;\n  (*pcVar26)();\n  pJVar21 = jsonParseCached(pCtx,argv,pCtx);\n  if (pJVar21 != (JsonParse *)0x0) {\n    if (pppsVar16 == (sqlite3_value ***)0x2) {\n      pcVar10 = (char *)(**(code **)(pcVar26 + 0xc1dd4))(argv[1]);\n      pJVar9 = jsonLookup(pJVar21,pcVar10,(int *)0x0,pCtx);\n    }\n    else {\n      pJVar9 = pJVar21->aNode;\n    }\n    if (pJVar9 != (JsonNode *)0x0) {\n                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (**(code **)(pcVar26 + 0xc1e3c))\n                (pCtx,*(undefined4 *)\n                       ((uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c),0xffffffff,\n                 0);\n      return;\n    }\n  }\n  return;\ncode_r0x000993b8:\n  uVar12 = pJVar15->nAlloc;\n  iVar11 = iVar11 + 1;\n  goto LAB_000993bc;\n}" primitive_type (function_declarator "fts3Appendf(int *pRc,char **pz,char *zFormat,...)" identifier (parameter_list "(int *pRc,char **pz,char *zFormat,...)" ( (parameter_declaration "int *pRc" primitive_type (pointer_declarator "*pRc" * identifier)) , (parameter_declaration "char **pz" primitive_type (pointer_declarator "**pz" * (pointer_declarator "*pz" * identifier))) , (parameter_declaration "char *zFormat" primitive_type (pointer_declarator "*zFormat" * identifier)) , (variadic_parameter "..." ...) ))) (compound_statement "{\n  bool bVar1;\n  JsonParse *pJVar2;\n  undefined4 uVar3;\n  int iVar4;\n  undefined4 uVar5;\n  int iVar6;\n  u32 uVar7;\n  sqlite3_value ***pppsVar8;\n  JsonNode *pJVar9;\n  char *pcVar10;\n  int iVar11;\n  u32 uVar12;\n  byte bVar14;\n  u32 *puVar13;\n  sqlite3_context *pCtx;\n  JsonParse *pJVar15;\n  sqlite3_value ***pppsVar16;\n  sqlite3_value **pApnd;\n  sqlite3_value **argv;\n  u32 *in_a3;\n  u32 uVar17;\n  char cVar18;\n  int *piVar19;\n  JsonParse *pJVar20;\n  JsonParse *pJVar21;\n  JsonParse *pJVar22;\n  u32 *unaff_s1;\n  int *piVar23;\n  undefined4 *puVar24;\n  JsonParse *unaff_s2;\n  uint uVar25;\n  char **unaff_s3;\n  int in_t9;\n  code *pcVar26;\n  code *pcVar27;\n  double dVar28;\n  u32 *puStackX_c;\n  sqlite3_value ***pppsStack_128;\n  sqlite3_context *psStack_124;\n  int iStack_120;\n  undefined4 *puStack_11c;\n  JsonParse *pJStack_118;\n  code *pcStack_114;\n  code *pcStack_100;\n  sqlite3_value ***pppsStack_f8;\n  sqlite3_value ***pppsStack_f4;\n  JsonParse *pJStack_ec;\n  JsonParse *pJStack_e8;\n  code *pcStack_e4;\n  sqlite3_value **ppsStack_d8;\n  u32 *puStack_d4;\n  code *pcStack_d0;\n  JsonParse JStack_c8;\n  undefined4 uStack_a8;\n  undefined4 uStack_a4;\n  undefined1 uStack_a0;\n  int iStack_9c;\n  JsonParse *pJStack_98;\n  int *piStack_94;\n  int iStack_90;\n  JsonParse *pJStack_8c;\n  JsonParse *pJStack_88;\n  code *pcStack_84;\n  code *pcStack_70;\n  u32 uStack_64;\n  u32 uStack_60;\n  JsonNode *pJStack_5c;\n  int *piStack_58;\n  u32 *puStack_54;\n  JsonParse *pJStack_50;\n  char **ppcStack_4c;\n  va_list ap;\n  \n  piVar19 = *(int **)(in_t9 + 0xc2b00);\n  iVar11 = *piVar19;\n  pJVar21 = (JsonParse *)pRc;\n  pJVar22 = (JsonParse *)pz;\n  puStack_54 = unaff_s1;\n  ppcStack_4c = unaff_s3;\n  puStackX_c = in_a3;\n  if (*pRc == 0) {\n    pJVar22 = (JsonParse *)&puStackX_c;\n    pJVar2 = (JsonParse *)sqlite3_vmprintf(zFormat,pJVar22);\n    if (pJVar2 == (JsonParse *)0x0) {\nLAB_00099014:\n      unaff_s2 = (JsonParse *)0x0;\n      *pRc = 7;\n      pJVar21 = (JsonParse *)*pz;\n    }\n    else {\n      pJVar21 = (JsonParse *)*pz;\n      unaff_s2 = pJVar2;\n      if (pJVar21 != (JsonParse *)0x0) {\n        zFormat = (char *)pJVar2;\n        unaff_s2 = (JsonParse *)sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624));\n        pJVar22 = pJVar21;\n        (**(code **)(in_t9 + 0xc26f4))(pJVar2);\n        if (unaff_s2 == (JsonParse *)0x0) goto LAB_00099014;\n        pJVar21 = (JsonParse *)*pz;\n      }\n    }\n    (**(code **)(in_t9 + 0xc26f4))();\n    *pz = (char *)unaff_s2;\n    puStack_54 = (u32 *)pRc;\n    ppcStack_4c = pz;\n  }\n  if (iVar11 == *piVar19) {\n    return;\n  }\n  pcVar26 = *(code **)(in_t9 + 0xc2ae4);\n  (*pcVar26)();\n  pcStack_70 = pcVar26 + 0xca57c;\n  piVar23 = *(int **)(pcVar26 + 0xc29f8);\n  uStack_64 = 0;\n  pJStack_5c = (JsonNode *)*piVar23;\n  piStack_58 = piVar19;\n  pJStack_50 = unaff_s2;\n  uVar3 = (**(code **)(pcVar26 + 0xc2694))();\n  iVar11 = (**(code **)(pcStack_70 + -0x7f9c))(((JsonParse *)zFormat)->nNode);\n  iVar4 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nNode);\n  pJVar2 = pJVar21;\n  if (pJVar22 == (JsonParse *)0x2) {\n    uVar5 = (**(code **)(pcStack_70 + -0x7ed0))(pJVar21);\n    in_a3 = &uStack_60;\n    uStack_60 = 0;\n    (**(code **)(pcStack_70 + -0x7d60))(uVar5,0x3ec,0xffffffff);\n    if (uStack_60 == 0) {\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }\n    else {\n      iVar6 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nAlloc);\n      if ((iVar11 != 0) && (iVar6 == 4)) {\n        puVar13 = (u32 *)(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc);\n        uStack_64 = *puVar13;\n        uVar17 = (*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))\n                           (uVar3,iVar11,iVar4 + 1,uStack_64);\n        if (uStack_64 == uVar17) {\n          (**(code **)(pcStack_70 + -0x7e40))\n                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }\n  }\n  else {\n    if (iVar11 == 0) {\nLAB_000990f4:\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n      if (uStack_64 != 0) {\nLAB_000990fc:\n        in_a3 = (u32 *)0xffffffff;\n        pJVar15 = (JsonParse *)&uStack_64;\n        (**(code **)(pcStack_70 + -0x7e28))(pJVar21,pJVar15,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar4 = (*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24))(uVar3,iVar11,iVar4 + 1);\n      if (iVar4 != 0) {\n        uStack_64 = *(u32 *)(iVar4 + 8);\n        goto LAB_000990f4;\n      }\n      uStack_64 = 0;\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n    }\n    zFormat = sqlite3_mprintf((char *)(iVar4 + -0x7478),iVar11);\n    pJVar15 = (JsonParse *)zFormat;\n    (**(code **)(pcStack_70 + -0x7e40))(pJVar21,zFormat,0xffffffff);\n    pJVar2 = (JsonParse *)zFormat;\n    (**(code **)(pcStack_70 + -0x7f90))();\n  }\nLAB_00099118:\n  if (pJStack_5c == (JsonNode *)*piVar23) {\n    return;\n  }\n  pcVar26 = *(code **)(pcStack_70 + -0x7ba0);\n  pcVar27 = rtreeBestIndex;\n  (*pcVar26)();\n  pJStack_8c = pJVar21;\n  piStack_94 = piVar23;\n  iStack_90 = iVar11;\n  pJVar21 = &JStack_c8;\n  pcStack_d0 = pcVar26 + 0xca310;\n  pcStack_84 = pcVar27;\n  pJStack_88 = pJVar22;\n  pJStack_98 = (JsonParse *)zFormat;\n  piVar19 = *(int **)(pcVar26 + 0xc278c);\n  uVar17 = pJVar15->nNode;\n  JStack_c8.nNode = 0;\n  JStack_c8.nAlloc = 0;\n  JStack_c8.aNode = (JsonNode *)0x0;\n  JStack_c8.zJson = (char *)0x0;\n  JStack_c8.aUp = (u32 *)0x0;\n  JStack_c8.oom = '\0';\n  JStack_c8.nErr = '\0';\n  JStack_c8.iDepth = 0;\n  JStack_c8.nJson = 0;\n  JStack_c8.iHold = 0;\n  uStack_a8 = 0;\n  uStack_a4 = 0;\n  uStack_a0 = 0;\n  iStack_9c = *piVar19;\n  pApnd = (sqlite3_value **)(uVar17 * 2);\n  if ((int)uVar17 < 1) {\n    pJVar22 = (JsonParse *)0x0;\n    pJVar15->oom = '\0';\n    pJVar15->nErr = '\0';\n    pJVar15->iDepth = 2;\n    pJVar15->iHold = 1;\nLAB_00099480:\n    puVar13 = pJVar2[1].aUp;\n    uVar25._0_1_ = pJVar2[1].oom;\n    uVar25._1_1_ = pJVar2[1].nErr;\n    uVar25._2_2_ = pJVar2[1].iDepth;\n    pJVar21 = (JsonParse *)((int)puVar13 >> ((uint)pJVar22 & 0x1f));\n    pJVar20 = pJVar21;\n    pJVar2 = (JsonParse *)\n             (((int)puVar13 << 1) << (~(uint)pJVar22 & 0x1f) | uVar25 >> ((uint)pJVar22 & 0x1f));\n    if (((uint)pJVar22 & 0x20) != 0) {\n      pJVar20 = (JsonParse *)((int)puVar13 >> 0x1f);\n      pJVar2 = pJVar21;\n    }\n    pJVar21 = pJVar2;\n    dVar28 = (double)(**(code **)(pcStack_d0 + -0x7f18))(pJVar20);\n    pJVar15[1].aUp = &pJVar20->nNode;\n    *(JsonParse **)&pJVar15[1].oom = pJVar2;\n    *(double *)&pJVar15[1].aNode = dVar28 * *(double *)(*(int *)(pcStack_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    uVar12 = pJVar15->nAlloc;\n    bVar1 = false;\n    uVar7 = uVar12;\n    do {\n      pcVar10 = (char *)(uVar7 + 4);\n      uVar7 = uVar7 + 0xc;\n      if (*pcVar10 == '@') {\n        bVar1 = true;\n      }\n    } while (uVar17 * 0xc + uVar12 != uVar7);\n    in_a3 = (u32 *)0x0;\n    pJVar20 = (JsonParse *)0x0;\n    iVar11 = 0;\nLAB_000993bc:\n    piVar23 = (int *)((int)in_a3 + uVar12);\n    if (!bVar1) {\n      if (*(char *)((int)piVar23 + 5) == '\0') goto LAB_0009939c;\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\n      if (iVar4 != 0) goto LAB_000993d8;\n      if (bVar14 != 2) goto LAB_00099394;\n      if (iVar11 == 0) {\n        iVar4 = 0;\n      }\n      else {\n        iVar6 = 0;\n        do {\n          iVar4 = iVar6 + 1;\n          pJVar15->aUp[iVar6 * 2] = 0;\n          *(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;\n          iVar6 = iVar4;\n        } while (iVar4 != iVar11);\n        iVar4 = iVar4 * 8;\n      }\n      in_a3 = (u32 *)0x1;\n      pJVar15->oom = '\0';\n      pJVar15->nErr = '\0';\n      pJVar15->iDepth = 1;\n      pJVar21 = *(JsonParse **)(pcVar26 + 0xc23f4);\n      iVar11 = pJVar21[-0xffffffff000003bd].nJson;\n      uVar17 = pJVar21[-0xffffffff000003bd].iHold;\n      *(undefined4 *)((int)pJVar15->aUp + iVar4) = 1;\n      pApnd = (sqlite3_value **)0x0;\n      *(undefined1 *)((int)pJVar15->aUp + iVar4 + 4) = 1;\n      pJVar15[1].aNode = (JsonNode *)iVar11;\n      pJVar15[1].zJson = (char *)uVar17;\n      pJVar15[1].oom = '\0';\n      pJVar15[1].nErr = '\0';\n      pJVar15[1].iDepth = 1;\n      pJVar15[1].aUp = (u32 *)0x0;\n      pJVar15[1].nJson = 1;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar23 + 5) == '\0') {\nLAB_0009939c:\n      pJVar22 = pJVar20;\n      if ((int)uVar17 <= iVar11 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\nLAB_000993d8:\n      if ((iVar4 < 1) || ((int)(uint)pJVar2->nErr < iVar4)) {\nLAB_00099394:\n        cVar18 = 'F';\n        if (bVar14 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar14 == 8) {\n        cVar18 = 'B';\n      }\n      else if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }\n      puVar13 = pJVar15->aUp;\n      pJVar22 = (JsonParse *)((int)&pJVar20->nNode + 2);\n      *(char *)((int)&pJVar20->nNode + (int)&JStack_c8.nNode) = cVar18;\n      *(char *)((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1)) = (char)*piVar23 + '/';\n      puVar13[iVar11 * 2] = (int)pJVar22 >> 1;\n      *(undefined1 *)(pJVar15->aUp + iVar11 * 2 + 1) = 1;\n      uVar17 = pJVar15->nNode;\n      pJVar20 = pJVar22;\n      if ((int)uVar17 <= iVar11 + 1) {\nLAB_00099470:\n        pApnd = (sqlite3_value **)(iVar11 + 1);\n        pJVar15->oom = '\0';\n        pJVar15->nErr = '\0';\n        pJVar15->iDepth = 2;\n        pJVar15->iHold = 1;\n        pJVar20 = pJVar22;\n        if (pJVar22 == (JsonParse *)0x0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    in_a3 = in_a3 + 3;\n    if ((int)pJVar20 < 0x28) goto code_r0x000993b8;\n    pJVar15->oom = '\0';\n    pJVar15->nErr = '\0';\n    pJVar15->iDepth = 2;\n    pJVar15->iHold = 1;\nLAB_00099544:\n    pApnd = (sqlite3_value **)(iVar11 + 1);\n    pcVar10 = sqlite3_mprintf((char *)(*(int *)(pcVar26 + 0xc2348) + 0x71f4));\n    pJVar15->nJson = (int)pcVar10;\n    if (pcVar10 != (char *)0x0) {\n      pJVar22 = (JsonParse *)((int)pJVar20 >> 1);\n      goto LAB_00099480;\n    }\n  }\nLAB_000994e0:\n  if (iStack_9c == *piVar19) {\n    return;\n  }\n  pcVar26 = *(code **)(pcStack_d0 + -0x7ba0);\n  pcVar27 = rtreeCheckAppendMsg;\n  iVar11 = iStack_9c;\n  (*pcVar26)();\n  pcStack_100 = pcVar26 + 0xc9f94;\n  pppsVar8 = &ppsStack_d8;\n  puVar24 = *(undefined4 **)(pcVar26 + 0xc2410);\n  pppsStack_f4 = (sqlite3_value ***)*puVar24;\n  pppsVar16 = pppsStack_f4;\n  pppsStack_f8 = pppsVar8;\n  pJStack_ec = pJVar20;\n  pJStack_e8 = pJVar15;\n  pcStack_e4 = pcVar27;\n  ppsStack_d8 = pApnd;\n  puStack_d4 = in_a3;\n  if ((*(int *)(iVar11 + 0x28) == 0) && (*(int *)(iVar11 + 0x30) < 100)) {\n    puVar13 = (u32 *)sqlite3_vmprintf((char *)pJVar21,pppsVar8);\n    if (puVar13 == (u32 *)0x0) {\nLAB_000996f0:\n      *(undefined4 *)(iVar11 + 0x28) = 7;\n    }\n    else {\n      pppsVar8 = *(sqlite3_value ****)(iVar11 + 0x2c);\n      if (pppsVar8 == (sqlite3_value ***)0x0) {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4);\n      }\n      else {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48);\n      }\n      pJVar21 = (JsonParse *)(*(int *)(pcStack_100 + -0x7fb4) + -0x741c);\n      pcVar10 = sqlite3_mprintf((char *)pJVar21);\n      *(char **)(iVar11 + 0x2c) = pcVar10;\n      in_a3 = puVar13;\n      if (pcVar10 == (char *)0x0) goto LAB_000996f0;\n    }\n    *(int *)(iVar11 + 0x30) = *(int *)(iVar11 + 0x30) + 1;\n    pppsVar16 = pppsVar8;\n  }\n  if (pppsStack_f4 == (sqlite3_value ***)*puVar24) {\n    return;\n  }\n  pcVar26 = *(code **)(pcStack_100 + -0x7ba0);\n  pcVar27 = jsonLookup;\n  (*pcVar26)();\n  piVar19 = *(int **)(pcVar26 + 0xc231c);\n  pppsStack_128 = (sqlite3_value ***)0x0;\n  psStack_124 = (sqlite3_context *)*piVar19;\n  argv = pApnd;\n  iStack_120 = iVar11;\n  puStack_11c = puVar24;\n  pJStack_118 = pJVar2;\n  pcStack_114 = pcVar27;\n  if (pppsVar16 != (sqlite3_value ***)0x0) {\n    if (*(char *)pppsVar16 == '$') {\n      argv = (sqlite3_value **)((int)pppsVar16 + 1);\n      jsonLookupStep(pJVar21,0,(char *)argv,(int *)pApnd,(char **)&pppsStack_128);\n      pppsVar16 = pppsStack_128;\n      if (pppsStack_128 == (sqlite3_value ***)0x0) goto LAB_000997bc;\n    }\n    pppsStack_128 = pppsVar16;\n    iVar11 = *(int *)(pcVar26 + 0xc1eec);\n    pJVar21->nErr = pJVar21->nErr + '\x01';\n    pppsVar16 = pppsStack_128;\n    pppsVar8 = (sqlite3_value ***)sqlite3_mprintf((char *)(iVar11 + -0x7414));\n    if (pppsVar8 == (sqlite3_value ***)0x0) {\n      (**(code **)(pcVar26 + 0xc2074))(in_a3);\n    }\n    else {\n      argv = (sqlite3_value **)0xffffffff;\n      pppsVar16 = pppsVar8;\n      (**(code **)(pcVar26 + 0xc2060))(in_a3);\n      (**(code **)(pcVar26 + 0xc1f10))(pppsVar8);\n    }\n  }\nLAB_000997bc:\n  if (psStack_124 == (sqlite3_context *)*piVar19) {\n    return;\n  }\n  pcVar26 = *(code **)(pcVar26 + 0xc2300);\n  pCtx = psStack_124;\n  (*pcVar26)();\n  pJVar21 = jsonParseCached(pCtx,argv,pCtx);\n  if (pJVar21 != (JsonParse *)0x0) {\n    if (pppsVar16 == (sqlite3_value ***)0x2) {\n      pcVar10 = (char *)(**(code **)(pcVar26 + 0xc1dd4))(argv[1]);\n      pJVar9 = jsonLookup(pJVar21,pcVar10,(int *)0x0,pCtx);\n    }\n    else {\n      pJVar9 = pJVar21->aNode;\n    }\n    if (pJVar9 != (JsonNode *)0x0) {\n                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (**(code **)(pcVar26 + 0xc1e3c))\n                (pCtx,*(undefined4 *)\n                       ((uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c),0xffffffff,\n                 0);\n      return;\n    }\n  }\n  return;\ncode_r0x000993b8:\n  uVar12 = pJVar15->nAlloc;\n  iVar11 = iVar11 + 1;\n  goto LAB_000993bc;\n}" { (declaration "bool bVar1;" primitive_type identifier ;) (declaration "JsonParse *pJVar2;" type_identifier (pointer_declarator "*pJVar2" * identifier) ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "undefined4 uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "u32 uVar7;" type_identifier identifier ;) (declaration "sqlite3_value ***pppsVar8;" type_identifier (pointer_declarator "***pppsVar8" * (pointer_declarator "**pppsVar8" * (pointer_declarator "*pppsVar8" * identifier))) ;) (declaration "JsonNode *pJVar9;" type_identifier (pointer_declarator "*pJVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "int iVar11;" primitive_type identifier ;) (declaration "u32 uVar12;" type_identifier identifier ;) (declaration "byte bVar14;" type_identifier identifier ;) (declaration "u32 *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "sqlite3_context *pCtx;" type_identifier (pointer_declarator "*pCtx" * identifier) ;) (declaration "JsonParse *pJVar15;" type_identifier (pointer_declarator "*pJVar15" * identifier) ;) (declaration "sqlite3_value ***pppsVar16;" type_identifier (pointer_declarator "***pppsVar16" * (pointer_declarator "**pppsVar16" * (pointer_declarator "*pppsVar16" * identifier))) ;) (declaration "sqlite3_value **pApnd;" type_identifier (pointer_declarator "**pApnd" * (pointer_declarator "*pApnd" * identifier)) ;) (declaration "sqlite3_value **argv;" type_identifier (pointer_declarator "**argv" * (pointer_declarator "*argv" * identifier)) ;) (declaration "u32 *in_a3;" type_identifier (pointer_declarator "*in_a3" * identifier) ;) (declaration "u32 uVar17;" type_identifier identifier ;) (declaration "char cVar18;" primitive_type identifier ;) (declaration "int *piVar19;" primitive_type (pointer_declarator "*piVar19" * identifier) ;) (declaration "JsonParse *pJVar20;" type_identifier (pointer_declarator "*pJVar20" * identifier) ;) (declaration "JsonParse *pJVar21;" type_identifier (pointer_declarator "*pJVar21" * identifier) ;) (declaration "JsonParse *pJVar22;" type_identifier (pointer_declarator "*pJVar22" * identifier) ;) (declaration "u32 *unaff_s1;" type_identifier (pointer_declarator "*unaff_s1" * identifier) ;) (declaration "int *piVar23;" primitive_type (pointer_declarator "*piVar23" * identifier) ;) (declaration "undefined4 *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "JsonParse *unaff_s2;" type_identifier (pointer_declarator "*unaff_s2" * identifier) ;) (declaration "uint uVar25;" type_identifier identifier ;) (declaration "char **unaff_s3;" primitive_type (pointer_declarator "**unaff_s3" * (pointer_declarator "*unaff_s3" * identifier)) ;) (declaration "int in_t9;" primitive_type identifier ;) (declaration "code *pcVar26;" type_identifier (pointer_declarator "*pcVar26" * identifier) ;) (declaration "code *pcVar27;" type_identifier (pointer_declarator "*pcVar27" * identifier) ;) (declaration "double dVar28;" primitive_type identifier ;) (declaration "u32 *puStackX_c;" type_identifier (pointer_declarator "*puStackX_c" * identifier) ;) (declaration "sqlite3_value ***pppsStack_128;" type_identifier (pointer_declarator "***pppsStack_128" * (pointer_declarator "**pppsStack_128" * (pointer_declarator "*pppsStack_128" * identifier))) ;) (declaration "sqlite3_context *psStack_124;" type_identifier (pointer_declarator "*psStack_124" * identifier) ;) (declaration "int iStack_120;" primitive_type identifier ;) (declaration "undefined4 *puStack_11c;" type_identifier (pointer_declarator "*puStack_11c" * identifier) ;) (declaration "JsonParse *pJStack_118;" type_identifier (pointer_declarator "*pJStack_118" * identifier) ;) (declaration "code *pcStack_114;" type_identifier (pointer_declarator "*pcStack_114" * identifier) ;) (declaration "code *pcStack_100;" type_identifier (pointer_declarator "*pcStack_100" * identifier) ;) (declaration "sqlite3_value ***pppsStack_f8;" type_identifier (pointer_declarator "***pppsStack_f8" * (pointer_declarator "**pppsStack_f8" * (pointer_declarator "*pppsStack_f8" * identifier))) ;) (declaration "sqlite3_value ***pppsStack_f4;" type_identifier (pointer_declarator "***pppsStack_f4" * (pointer_declarator "**pppsStack_f4" * (pointer_declarator "*pppsStack_f4" * identifier))) ;) (declaration "JsonParse *pJStack_ec;" type_identifier (pointer_declarator "*pJStack_ec" * identifier) ;) (declaration "JsonParse *pJStack_e8;" type_identifier (pointer_declarator "*pJStack_e8" * identifier) ;) (declaration "code *pcStack_e4;" type_identifier (pointer_declarator "*pcStack_e4" * identifier) ;) (declaration "sqlite3_value **ppsStack_d8;" type_identifier (pointer_declarator "**ppsStack_d8" * (pointer_declarator "*ppsStack_d8" * identifier)) ;) (declaration "u32 *puStack_d4;" type_identifier (pointer_declarator "*puStack_d4" * identifier) ;) (declaration "code *pcStack_d0;" type_identifier (pointer_declarator "*pcStack_d0" * identifier) ;) (declaration "JsonParse JStack_c8;" type_identifier identifier ;) (declaration "undefined4 uStack_a8;" type_identifier identifier ;) (declaration "undefined4 uStack_a4;" type_identifier identifier ;) (declaration "undefined1 uStack_a0;" type_identifier identifier ;) (declaration "int iStack_9c;" primitive_type identifier ;) (declaration "JsonParse *pJStack_98;" type_identifier (pointer_declarator "*pJStack_98" * identifier) ;) (declaration "int *piStack_94;" primitive_type (pointer_declarator "*piStack_94" * identifier) ;) (declaration "int iStack_90;" primitive_type identifier ;) (declaration "JsonParse *pJStack_8c;" type_identifier (pointer_declarator "*pJStack_8c" * identifier) ;) (declaration "JsonParse *pJStack_88;" type_identifier (pointer_declarator "*pJStack_88" * identifier) ;) (declaration "code *pcStack_84;" type_identifier (pointer_declarator "*pcStack_84" * identifier) ;) (declaration "code *pcStack_70;" type_identifier (pointer_declarator "*pcStack_70" * identifier) ;) (declaration "u32 uStack_64;" type_identifier identifier ;) (declaration "u32 uStack_60;" type_identifier identifier ;) (declaration "JsonNode *pJStack_5c;" type_identifier (pointer_declarator "*pJStack_5c" * identifier) ;) (declaration "int *piStack_58;" primitive_type (pointer_declarator "*piStack_58" * identifier) ;) (declaration "u32 *puStack_54;" type_identifier (pointer_declarator "*puStack_54" * identifier) ;) (declaration "JsonParse *pJStack_50;" type_identifier (pointer_declarator "*pJStack_50" * identifier) ;) (declaration "char **ppcStack_4c;" primitive_type (pointer_declarator "**ppcStack_4c" * (pointer_declarator "*ppcStack_4c" * identifier)) ;) (declaration "va_list ap;" type_identifier identifier ;) (expression_statement "piVar19 = *(int **)(in_t9 + 0xc2b00);" (assignment_expression "piVar19 = *(int **)(in_t9 + 0xc2b00)" identifier = (pointer_expression "*(int **)(in_t9 + 0xc2b00)" * (cast_expression "(int **)(in_t9 + 0xc2b00)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(in_t9 + 0xc2b00)" ( (binary_expression "in_t9 + 0xc2b00" identifier + number_literal) ))))) ;) (expression_statement "iVar11 = *piVar19;" (assignment_expression "iVar11 = *piVar19" identifier = (pointer_expression "*piVar19" * identifier)) ;) (expression_statement "pJVar21 = (JsonParse *)pRc;" (assignment_expression "pJVar21 = (JsonParse *)pRc" identifier = (cast_expression "(JsonParse *)pRc" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pJVar22 = (JsonParse *)pz;" (assignment_expression "pJVar22 = (JsonParse *)pz" identifier = (cast_expression "(JsonParse *)pz" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "puStack_54 = unaff_s1;" (assignment_expression "puStack_54 = unaff_s1" identifier = identifier) ;) (expression_statement "ppcStack_4c = unaff_s3;" (assignment_expression "ppcStack_4c = unaff_s3" identifier = identifier) ;) (expression_statement "puStackX_c = in_a3;" (assignment_expression "puStackX_c = in_a3" identifier = identifier) ;) (if_statement "if (*pRc == 0) {\n    pJVar22 = (JsonParse *)&puStackX_c;\n    pJVar2 = (JsonParse *)sqlite3_vmprintf(zFormat,pJVar22);\n    if (pJVar2 == (JsonParse *)0x0) {\nLAB_00099014:\n      unaff_s2 = (JsonParse *)0x0;\n      *pRc = 7;\n      pJVar21 = (JsonParse *)*pz;\n    }\n    else {\n      pJVar21 = (JsonParse *)*pz;\n      unaff_s2 = pJVar2;\n      if (pJVar21 != (JsonParse *)0x0) {\n        zFormat = (char *)pJVar2;\n        unaff_s2 = (JsonParse *)sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624));\n        pJVar22 = pJVar21;\n        (**(code **)(in_t9 + 0xc26f4))(pJVar2);\n        if (unaff_s2 == (JsonParse *)0x0) goto LAB_00099014;\n        pJVar21 = (JsonParse *)*pz;\n      }\n    }\n    (**(code **)(in_t9 + 0xc26f4))();\n    *pz = (char *)unaff_s2;\n    puStack_54 = (u32 *)pRc;\n    ppcStack_4c = pz;\n  }" if (parenthesized_expression "(*pRc == 0)" ( (binary_expression "*pRc == 0" (pointer_expression "*pRc" * identifier) == number_literal) )) (compound_statement "{\n    pJVar22 = (JsonParse *)&puStackX_c;\n    pJVar2 = (JsonParse *)sqlite3_vmprintf(zFormat,pJVar22);\n    if (pJVar2 == (JsonParse *)0x0) {\nLAB_00099014:\n      unaff_s2 = (JsonParse *)0x0;\n      *pRc = 7;\n      pJVar21 = (JsonParse *)*pz;\n    }\n    else {\n      pJVar21 = (JsonParse *)*pz;\n      unaff_s2 = pJVar2;\n      if (pJVar21 != (JsonParse *)0x0) {\n        zFormat = (char *)pJVar2;\n        unaff_s2 = (JsonParse *)sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624));\n        pJVar22 = pJVar21;\n        (**(code **)(in_t9 + 0xc26f4))(pJVar2);\n        if (unaff_s2 == (JsonParse *)0x0) goto LAB_00099014;\n        pJVar21 = (JsonParse *)*pz;\n      }\n    }\n    (**(code **)(in_t9 + 0xc26f4))();\n    *pz = (char *)unaff_s2;\n    puStack_54 = (u32 *)pRc;\n    ppcStack_4c = pz;\n  }" { (expression_statement "pJVar22 = (JsonParse *)&puStackX_c;" (assignment_expression "pJVar22 = (JsonParse *)&puStackX_c" identifier = (cast_expression "(JsonParse *)&puStackX_c" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&puStackX_c" & identifier))) ;) (expression_statement "pJVar2 = (JsonParse *)sqlite3_vmprintf(zFormat,pJVar22);" (assignment_expression "pJVar2 = (JsonParse *)sqlite3_vmprintf(zFormat,pJVar22)" identifier = (cast_expression "(JsonParse *)sqlite3_vmprintf(zFormat,pJVar22)" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "sqlite3_vmprintf(zFormat,pJVar22)" identifier (argument_list "(zFormat,pJVar22)" ( identifier , identifier ))))) ;) (if_statement "if (pJVar2 == (JsonParse *)0x0) {\nLAB_00099014:\n      unaff_s2 = (JsonParse *)0x0;\n      *pRc = 7;\n      pJVar21 = (JsonParse *)*pz;\n    }\n    else {\n      pJVar21 = (JsonParse *)*pz;\n      unaff_s2 = pJVar2;\n      if (pJVar21 != (JsonParse *)0x0) {\n        zFormat = (char *)pJVar2;\n        unaff_s2 = (JsonParse *)sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624));\n        pJVar22 = pJVar21;\n        (**(code **)(in_t9 + 0xc26f4))(pJVar2);\n        if (unaff_s2 == (JsonParse *)0x0) goto LAB_00099014;\n        pJVar21 = (JsonParse *)*pz;\n      }\n    }" if (parenthesized_expression "(pJVar2 == (JsonParse *)0x0)" ( (binary_expression "pJVar2 == (JsonParse *)0x0" identifier == (cast_expression "(JsonParse *)0x0" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00099014:\n      unaff_s2 = (JsonParse *)0x0;\n      *pRc = 7;\n      pJVar21 = (JsonParse *)*pz;\n    }" { (labeled_statement "LAB_00099014:\n      unaff_s2 = (JsonParse *)0x0;" statement_identifier : (expression_statement "unaff_s2 = (JsonParse *)0x0;" (assignment_expression "unaff_s2 = (JsonParse *)0x0" identifier = (cast_expression "(JsonParse *)0x0" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "*pRc = 7;" (assignment_expression "*pRc = 7" (pointer_expression "*pRc" * identifier) = number_literal) ;) (expression_statement "pJVar21 = (JsonParse *)*pz;" (assignment_expression "pJVar21 = (JsonParse *)*pz" identifier = (cast_expression "(JsonParse *)*pz" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*pz" * identifier))) ;) }) (else_clause "else {\n      pJVar21 = (JsonParse *)*pz;\n      unaff_s2 = pJVar2;\n      if (pJVar21 != (JsonParse *)0x0) {\n        zFormat = (char *)pJVar2;\n        unaff_s2 = (JsonParse *)sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624));\n        pJVar22 = pJVar21;\n        (**(code **)(in_t9 + 0xc26f4))(pJVar2);\n        if (unaff_s2 == (JsonParse *)0x0) goto LAB_00099014;\n        pJVar21 = (JsonParse *)*pz;\n      }\n    }" else (compound_statement "{\n      pJVar21 = (JsonParse *)*pz;\n      unaff_s2 = pJVar2;\n      if (pJVar21 != (JsonParse *)0x0) {\n        zFormat = (char *)pJVar2;\n        unaff_s2 = (JsonParse *)sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624));\n        pJVar22 = pJVar21;\n        (**(code **)(in_t9 + 0xc26f4))(pJVar2);\n        if (unaff_s2 == (JsonParse *)0x0) goto LAB_00099014;\n        pJVar21 = (JsonParse *)*pz;\n      }\n    }" { (expression_statement "pJVar21 = (JsonParse *)*pz;" (assignment_expression "pJVar21 = (JsonParse *)*pz" identifier = (cast_expression "(JsonParse *)*pz" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*pz" * identifier))) ;) (expression_statement "unaff_s2 = pJVar2;" (assignment_expression "unaff_s2 = pJVar2" identifier = identifier) ;) (if_statement "if (pJVar21 != (JsonParse *)0x0) {\n        zFormat = (char *)pJVar2;\n        unaff_s2 = (JsonParse *)sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624));\n        pJVar22 = pJVar21;\n        (**(code **)(in_t9 + 0xc26f4))(pJVar2);\n        if (unaff_s2 == (JsonParse *)0x0) goto LAB_00099014;\n        pJVar21 = (JsonParse *)*pz;\n      }" if (parenthesized_expression "(pJVar21 != (JsonParse *)0x0)" ( (binary_expression "pJVar21 != (JsonParse *)0x0" identifier != (cast_expression "(JsonParse *)0x0" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        zFormat = (char *)pJVar2;\n        unaff_s2 = (JsonParse *)sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624));\n        pJVar22 = pJVar21;\n        (**(code **)(in_t9 + 0xc26f4))(pJVar2);\n        if (unaff_s2 == (JsonParse *)0x0) goto LAB_00099014;\n        pJVar21 = (JsonParse *)*pz;\n      }" { (expression_statement "zFormat = (char *)pJVar2;" (assignment_expression "zFormat = (char *)pJVar2" identifier = (cast_expression "(char *)pJVar2" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "unaff_s2 = (JsonParse *)sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624));" (assignment_expression "unaff_s2 = (JsonParse *)sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624))" identifier = (cast_expression "(JsonParse *)sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624))" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "sqlite3_mprintf((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624))" identifier (argument_list "((char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624))" ( (cast_expression "(char *)(*(int *)(in_t9 + 0xc26bc) + 0x5624)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(in_t9 + 0xc26bc) + 0x5624)" ( (binary_expression "*(int *)(in_t9 + 0xc26bc) + 0x5624" (pointer_expression "*(int *)(in_t9 + 0xc26bc)" * (cast_expression "(int *)(in_t9 + 0xc26bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_t9 + 0xc26bc)" ( (binary_expression "in_t9 + 0xc26bc" identifier + number_literal) )))) + number_literal) ))) ))))) ;) (expression_statement "pJVar22 = pJVar21;" (assignment_expression "pJVar22 = pJVar21" identifier = identifier) ;) (expression_statement "(**(code **)(in_t9 + 0xc26f4))(pJVar2);" (call_expression "(**(code **)(in_t9 + 0xc26f4))(pJVar2)" (parenthesized_expression "(**(code **)(in_t9 + 0xc26f4))" ( (pointer_expression "**(code **)(in_t9 + 0xc26f4)" * (pointer_expression "*(code **)(in_t9 + 0xc26f4)" * (cast_expression "(code **)(in_t9 + 0xc26f4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(in_t9 + 0xc26f4)" ( (binary_expression "in_t9 + 0xc26f4" identifier + number_literal) ))))) )) (argument_list "(pJVar2)" ( identifier ))) ;) (if_statement "if (unaff_s2 == (JsonParse *)0x0) goto LAB_00099014;" if (parenthesized_expression "(unaff_s2 == (JsonParse *)0x0)" ( (binary_expression "unaff_s2 == (JsonParse *)0x0" identifier == (cast_expression "(JsonParse *)0x0" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00099014;" goto statement_identifier ;)) (expression_statement "pJVar21 = (JsonParse *)*pz;" (assignment_expression "pJVar21 = (JsonParse *)*pz" identifier = (cast_expression "(JsonParse *)*pz" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*pz" * identifier))) ;) })) }))) (expression_statement "(**(code **)(in_t9 + 0xc26f4))();" (call_expression "(**(code **)(in_t9 + 0xc26f4))()" (parenthesized_expression "(**(code **)(in_t9 + 0xc26f4))" ( (pointer_expression "**(code **)(in_t9 + 0xc26f4)" * (pointer_expression "*(code **)(in_t9 + 0xc26f4)" * (cast_expression "(code **)(in_t9 + 0xc26f4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(in_t9 + 0xc26f4)" ( (binary_expression "in_t9 + 0xc26f4" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "*pz = (char *)unaff_s2;" (assignment_expression "*pz = (char *)unaff_s2" (pointer_expression "*pz" * identifier) = (cast_expression "(char *)unaff_s2" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "puStack_54 = (u32 *)pRc;" (assignment_expression "puStack_54 = (u32 *)pRc" identifier = (cast_expression "(u32 *)pRc" ( (type_descriptor "u32 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "ppcStack_4c = pz;" (assignment_expression "ppcStack_4c = pz" identifier = identifier) ;) })) (if_statement "if (iVar11 == *piVar19) {\n    return;\n  }" if (parenthesized_expression "(iVar11 == *piVar19)" ( (binary_expression "iVar11 == *piVar19" identifier == (pointer_expression "*piVar19" * identifier)) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "pcVar26 = *(code **)(in_t9 + 0xc2ae4);" (assignment_expression "pcVar26 = *(code **)(in_t9 + 0xc2ae4)" identifier = (pointer_expression "*(code **)(in_t9 + 0xc2ae4)" * (cast_expression "(code **)(in_t9 + 0xc2ae4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(in_t9 + 0xc2ae4)" ( (binary_expression "in_t9 + 0xc2ae4" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar26)();" (call_expression "(*pcVar26)()" (parenthesized_expression "(*pcVar26)" ( (pointer_expression "*pcVar26" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_70 = pcVar26 + 0xca57c;" (assignment_expression "pcStack_70 = pcVar26 + 0xca57c" identifier = (binary_expression "pcVar26 + 0xca57c" identifier + number_literal)) ;) (expression_statement "piVar23 = *(int **)(pcVar26 + 0xc29f8);" (assignment_expression "piVar23 = *(int **)(pcVar26 + 0xc29f8)" identifier = (pointer_expression "*(int **)(pcVar26 + 0xc29f8)" * (cast_expression "(int **)(pcVar26 + 0xc29f8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar26 + 0xc29f8)" ( (binary_expression "pcVar26 + 0xc29f8" identifier + number_literal) ))))) ;) (expression_statement "uStack_64 = 0;" (assignment_expression "uStack_64 = 0" identifier = number_literal) ;) (expression_statement "pJStack_5c = (JsonNode *)*piVar23;" (assignment_expression "pJStack_5c = (JsonNode *)*piVar23" identifier = (cast_expression "(JsonNode *)*piVar23" ( (type_descriptor "JsonNode *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) ;) (expression_statement "piStack_58 = piVar19;" (assignment_expression "piStack_58 = piVar19" identifier = identifier) ;) (expression_statement "pJStack_50 = unaff_s2;" (assignment_expression "pJStack_50 = unaff_s2" identifier = identifier) ;) (expression_statement "uVar3 = (**(code **)(pcVar26 + 0xc2694))();" (assignment_expression "uVar3 = (**(code **)(pcVar26 + 0xc2694))()" identifier = (call_expression "(**(code **)(pcVar26 + 0xc2694))()" (parenthesized_expression "(**(code **)(pcVar26 + 0xc2694))" ( (pointer_expression "**(code **)(pcVar26 + 0xc2694)" * (pointer_expression "*(code **)(pcVar26 + 0xc2694)" * (cast_expression "(code **)(pcVar26 + 0xc2694)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar26 + 0xc2694)" ( (binary_expression "pcVar26 + 0xc2694" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iVar11 = (**(code **)(pcStack_70 + -0x7f9c))(((JsonParse *)zFormat)->nNode);" (assignment_expression "iVar11 = (**(code **)(pcStack_70 + -0x7f9c))(((JsonParse *)zFormat)->nNode)" identifier = (call_expression "(**(code **)(pcStack_70 + -0x7f9c))(((JsonParse *)zFormat)->nNode)" (parenthesized_expression "(**(code **)(pcStack_70 + -0x7f9c))" ( (pointer_expression "**(code **)(pcStack_70 + -0x7f9c)" * (pointer_expression "*(code **)(pcStack_70 + -0x7f9c)" * (cast_expression "(code **)(pcStack_70 + -0x7f9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_70 + -0x7f9c)" ( (binary_expression "pcStack_70 + -0x7f9c" identifier + number_literal) ))))) )) (argument_list "(((JsonParse *)zFormat)->nNode)" ( (field_expression "((JsonParse *)zFormat)->nNode" (parenthesized_expression "((JsonParse *)zFormat)" ( (cast_expression "(JsonParse *)zFormat" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier) )))) ;) (expression_statement "iVar4 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nNode);" (assignment_expression "iVar4 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nNode)" identifier = (call_expression "(**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nNode)" (parenthesized_expression "(**(code **)(pcStack_70 + -0x7fac))" ( (pointer_expression "**(code **)(pcStack_70 + -0x7fac)" * (pointer_expression "*(code **)(pcStack_70 + -0x7fac)" * (cast_expression "(code **)(pcStack_70 + -0x7fac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_70 + -0x7fac)" ( (binary_expression "pcStack_70 + -0x7fac" identifier + number_literal) ))))) )) (argument_list "(((JsonParse *)zFormat)->nNode)" ( (field_expression "((JsonParse *)zFormat)->nNode" (parenthesized_expression "((JsonParse *)zFormat)" ( (cast_expression "(JsonParse *)zFormat" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier) )))) ;) (expression_statement "pJVar2 = pJVar21;" (assignment_expression "pJVar2 = pJVar21" identifier = identifier) ;) (if_statement "if (pJVar22 == (JsonParse *)0x2) {\n    uVar5 = (**(code **)(pcStack_70 + -0x7ed0))(pJVar21);\n    in_a3 = &uStack_60;\n    uStack_60 = 0;\n    (**(code **)(pcStack_70 + -0x7d60))(uVar5,0x3ec,0xffffffff);\n    if (uStack_60 == 0) {\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }\n    else {\n      iVar6 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nAlloc);\n      if ((iVar11 != 0) && (iVar6 == 4)) {\n        puVar13 = (u32 *)(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc);\n        uStack_64 = *puVar13;\n        uVar17 = (*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))\n                           (uVar3,iVar11,iVar4 + 1,uStack_64);\n        if (uStack_64 == uVar17) {\n          (**(code **)(pcStack_70 + -0x7e40))\n                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }\n  }\n  else {\n    if (iVar11 == 0) {\nLAB_000990f4:\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n      if (uStack_64 != 0) {\nLAB_000990fc:\n        in_a3 = (u32 *)0xffffffff;\n        pJVar15 = (JsonParse *)&uStack_64;\n        (**(code **)(pcStack_70 + -0x7e28))(pJVar21,pJVar15,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar4 = (*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24))(uVar3,iVar11,iVar4 + 1);\n      if (iVar4 != 0) {\n        uStack_64 = *(u32 *)(iVar4 + 8);\n        goto LAB_000990f4;\n      }\n      uStack_64 = 0;\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n    }\n    zFormat = sqlite3_mprintf((char *)(iVar4 + -0x7478),iVar11);\n    pJVar15 = (JsonParse *)zFormat;\n    (**(code **)(pcStack_70 + -0x7e40))(pJVar21,zFormat,0xffffffff);\n    pJVar2 = (JsonParse *)zFormat;\n    (**(code **)(pcStack_70 + -0x7f90))();\n  }" if (parenthesized_expression "(pJVar22 == (JsonParse *)0x2)" ( (binary_expression "pJVar22 == (JsonParse *)0x2" identifier == (cast_expression "(JsonParse *)0x2" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    uVar5 = (**(code **)(pcStack_70 + -0x7ed0))(pJVar21);\n    in_a3 = &uStack_60;\n    uStack_60 = 0;\n    (**(code **)(pcStack_70 + -0x7d60))(uVar5,0x3ec,0xffffffff);\n    if (uStack_60 == 0) {\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }\n    else {\n      iVar6 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nAlloc);\n      if ((iVar11 != 0) && (iVar6 == 4)) {\n        puVar13 = (u32 *)(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc);\n        uStack_64 = *puVar13;\n        uVar17 = (*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))\n                           (uVar3,iVar11,iVar4 + 1,uStack_64);\n        if (uStack_64 == uVar17) {\n          (**(code **)(pcStack_70 + -0x7e40))\n                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }\n  }" { (expression_statement "uVar5 = (**(code **)(pcStack_70 + -0x7ed0))(pJVar21);" (assignment_expression "uVar5 = (**(code **)(pcStack_70 + -0x7ed0))(pJVar21)" identifier = (call_expression "(**(code **)(pcStack_70 + -0x7ed0))(pJVar21)" (parenthesized_expression "(**(code **)(pcStack_70 + -0x7ed0))" ( (pointer_expression "**(code **)(pcStack_70 + -0x7ed0)" * (pointer_expression "*(code **)(pcStack_70 + -0x7ed0)" * (cast_expression "(code **)(pcStack_70 + -0x7ed0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_70 + -0x7ed0)" ( (binary_expression "pcStack_70 + -0x7ed0" identifier + number_literal) ))))) )) (argument_list "(pJVar21)" ( identifier )))) ;) (expression_statement "in_a3 = &uStack_60;" (assignment_expression "in_a3 = &uStack_60" identifier = (pointer_expression "&uStack_60" & identifier)) ;) (expression_statement "uStack_60 = 0;" (assignment_expression "uStack_60 = 0" identifier = number_literal) ;) (expression_statement "(**(code **)(pcStack_70 + -0x7d60))(uVar5,0x3ec,0xffffffff);" (call_expression "(**(code **)(pcStack_70 + -0x7d60))(uVar5,0x3ec,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_70 + -0x7d60))" ( (pointer_expression "**(code **)(pcStack_70 + -0x7d60)" * (pointer_expression "*(code **)(pcStack_70 + -0x7d60)" * (cast_expression "(code **)(pcStack_70 + -0x7d60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_70 + -0x7d60)" ( (binary_expression "pcStack_70 + -0x7d60" identifier + number_literal) ))))) )) (argument_list "(uVar5,0x3ec,0xffffffff)" ( identifier , number_literal , number_literal ))) ;) (if_statement "if (uStack_60 == 0) {\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }\n    else {\n      iVar6 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nAlloc);\n      if ((iVar11 != 0) && (iVar6 == 4)) {\n        puVar13 = (u32 *)(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc);\n        uStack_64 = *puVar13;\n        uVar17 = (*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))\n                           (uVar3,iVar11,iVar4 + 1,uStack_64);\n        if (uStack_64 == uVar17) {\n          (**(code **)(pcStack_70 + -0x7e40))\n                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }" if (parenthesized_expression "(uStack_60 == 0)" ( (binary_expression "uStack_60 == 0" identifier == number_literal) )) (compound_statement "{\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }" { (expression_statement "pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x7434);" (assignment_expression "pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x7434)" identifier = (cast_expression "(JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x7434)" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_70 + -0x7fb4) + -0x7434)" ( (binary_expression "*(int *)(pcStack_70 + -0x7fb4) + -0x7434" (pointer_expression "*(int *)(pcStack_70 + -0x7fb4)" * (cast_expression "(int *)(pcStack_70 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_70 + -0x7fb4)" ( (binary_expression "pcStack_70 + -0x7fb4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);" (call_expression "(**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_70 + -0x7e40))" ( (pointer_expression "**(code **)(pcStack_70 + -0x7e40)" * (pointer_expression "*(code **)(pcStack_70 + -0x7e40)" * (cast_expression "(code **)(pcStack_70 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_70 + -0x7e40)" ( (binary_expression "pcStack_70 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(pJVar21,pJVar15,0xffffffff)" ( identifier , identifier , number_literal ))) ;) }) (else_clause "else {\n      iVar6 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nAlloc);\n      if ((iVar11 != 0) && (iVar6 == 4)) {\n        puVar13 = (u32 *)(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc);\n        uStack_64 = *puVar13;\n        uVar17 = (*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))\n                           (uVar3,iVar11,iVar4 + 1,uStack_64);\n        if (uStack_64 == uVar17) {\n          (**(code **)(pcStack_70 + -0x7e40))\n                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }" else (compound_statement "{\n      iVar6 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nAlloc);\n      if ((iVar11 != 0) && (iVar6 == 4)) {\n        puVar13 = (u32 *)(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc);\n        uStack_64 = *puVar13;\n        uVar17 = (*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))\n                           (uVar3,iVar11,iVar4 + 1,uStack_64);\n        if (uStack_64 == uVar17) {\n          (**(code **)(pcStack_70 + -0x7e40))\n                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);\n    }" { (expression_statement "iVar6 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nAlloc);" (assignment_expression "iVar6 = (**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nAlloc)" identifier = (call_expression "(**(code **)(pcStack_70 + -0x7fac))(((JsonParse *)zFormat)->nAlloc)" (parenthesized_expression "(**(code **)(pcStack_70 + -0x7fac))" ( (pointer_expression "**(code **)(pcStack_70 + -0x7fac)" * (pointer_expression "*(code **)(pcStack_70 + -0x7fac)" * (cast_expression "(code **)(pcStack_70 + -0x7fac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_70 + -0x7fac)" ( (binary_expression "pcStack_70 + -0x7fac" identifier + number_literal) ))))) )) (argument_list "(((JsonParse *)zFormat)->nAlloc)" ( (field_expression "((JsonParse *)zFormat)->nAlloc" (parenthesized_expression "((JsonParse *)zFormat)" ( (cast_expression "(JsonParse *)zFormat" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier) )))) ;) (if_statement "if ((iVar11 != 0) && (iVar6 == 4)) {\n        puVar13 = (u32 *)(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc);\n        uStack_64 = *puVar13;\n        uVar17 = (*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))\n                           (uVar3,iVar11,iVar4 + 1,uStack_64);\n        if (uStack_64 == uVar17) {\n          (**(code **)(pcStack_70 + -0x7e40))\n                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }" if (parenthesized_expression "((iVar11 != 0) && (iVar6 == 4))" ( (binary_expression "(iVar11 != 0) && (iVar6 == 4)" (parenthesized_expression "(iVar11 != 0)" ( (binary_expression "iVar11 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar6 == 4)" ( (binary_expression "iVar6 == 4" identifier == number_literal) ))) )) (compound_statement "{\n        puVar13 = (u32 *)(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc);\n        uStack_64 = *puVar13;\n        uVar17 = (*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))\n                           (uVar3,iVar11,iVar4 + 1,uStack_64);\n        if (uStack_64 == uVar17) {\n          (**(code **)(pcStack_70 + -0x7e40))\n                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }" { (expression_statement "puVar13 = (u32 *)(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc);" (assignment_expression "puVar13 = (u32 *)(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc)" identifier = (cast_expression "(u32 *)(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc)" ( (type_descriptor "u32 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_70 + -0x7fb0))(((JsonParse *)zFormat)->nAlloc)" (parenthesized_expression "(**(code **)(pcStack_70 + -0x7fb0))" ( (pointer_expression "**(code **)(pcStack_70 + -0x7fb0)" * (pointer_expression "*(code **)(pcStack_70 + -0x7fb0)" * (cast_expression "(code **)(pcStack_70 + -0x7fb0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_70 + -0x7fb0)" ( (binary_expression "pcStack_70 + -0x7fb0" identifier + number_literal) ))))) )) (argument_list "(((JsonParse *)zFormat)->nAlloc)" ( (field_expression "((JsonParse *)zFormat)->nAlloc" (parenthesized_expression "((JsonParse *)zFormat)" ( (cast_expression "(JsonParse *)zFormat" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier) ))))) ;) (expression_statement "uStack_64 = *puVar13;" (assignment_expression "uStack_64 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "uVar17 = (*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))\n                           (uVar3,iVar11,iVar4 + 1,uStack_64);" (assignment_expression "uVar17 = (*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))\n                           (uVar3,iVar11,iVar4 + 1,uStack_64)" identifier = (call_expression "(*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))\n                           (uVar3,iVar11,iVar4 + 1,uStack_64)" (parenthesized_expression "(*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8))" ( (pointer_expression "*(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8)" * (cast_expression "(code *)(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_70 + -0x7eb0) + 0x43f8)" ( (binary_expression "*(int *)(pcStack_70 + -0x7eb0) + 0x43f8" (pointer_expression "*(int *)(pcStack_70 + -0x7eb0)" * (cast_expression "(int *)(pcStack_70 + -0x7eb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_70 + -0x7eb0)" ( (binary_expression "pcStack_70 + -0x7eb0" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar3,iVar11,iVar4 + 1,uStack_64)" ( identifier , identifier , (binary_expression "iVar4 + 1" identifier + number_literal) , identifier )))) ;) (if_statement "if (uStack_64 == uVar17) {\n          (**(code **)(pcStack_70 + -0x7e40))\n                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }" if (parenthesized_expression "(uStack_64 == uVar17)" ( (binary_expression "uStack_64 == uVar17" identifier == identifier) )) (compound_statement "{\n          (**(code **)(pcStack_70 + -0x7e40))\n                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }" { (expression_statement "(**(code **)(pcStack_70 + -0x7e40))\n                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff);" (call_expression "(**(code **)(pcStack_70 + -0x7e40))\n                    (pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_70 + -0x7e40))" ( (pointer_expression "**(code **)(pcStack_70 + -0x7e40)" * (pointer_expression "*(code **)(pcStack_70 + -0x7e40)" * (cast_expression "(code **)(pcStack_70 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_70 + -0x7e40)" ( (binary_expression "pcStack_70 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(pJVar21,*(int *)(pcStack_70 + -0x7fc8) + 0x52ac,0xffffffff)" ( identifier , (binary_expression "*(int *)(pcStack_70 + -0x7fc8) + 0x52ac" (pointer_expression "*(int *)(pcStack_70 + -0x7fc8)" * (cast_expression "(int *)(pcStack_70 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_70 + -0x7fc8)" ( (binary_expression "pcStack_70 + -0x7fc8" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (goto_statement "goto LAB_000990fc;" goto statement_identifier ;) })) (expression_statement "pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x744c);" (assignment_expression "pJVar15 = (JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x744c)" identifier = (cast_expression "(JsonParse *)(*(int *)(pcStack_70 + -0x7fb4) + -0x744c)" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_70 + -0x7fb4) + -0x744c)" ( (binary_expression "*(int *)(pcStack_70 + -0x7fb4) + -0x744c" (pointer_expression "*(int *)(pcStack_70 + -0x7fb4)" * (cast_expression "(int *)(pcStack_70 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_70 + -0x7fb4)" ( (binary_expression "pcStack_70 + -0x7fb4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff);" (call_expression "(**(code **)(pcStack_70 + -0x7e40))(pJVar21,pJVar15,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_70 + -0x7e40))" ( (pointer_expression "**(code **)(pcStack_70 + -0x7e40)" * (pointer_expression "*(code **)(pcStack_70 + -0x7e40)" * (cast_expression "(code **)(pcStack_70 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_70 + -0x7e40)" ( (binary_expression "pcStack_70 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(pJVar21,pJVar15,0xffffffff)" ( identifier , identifier , number_literal ))) ;) }))) }) (else_clause "else {\n    if (iVar11 == 0) {\nLAB_000990f4:\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n      if (uStack_64 != 0) {\nLAB_000990fc:\n        in_a3 = (u32 *)0xffffffff;\n        pJVar15 = (JsonParse *)&uStack_64;\n        (**(code **)(pcStack_70 + -0x7e28))(pJVar21,pJVar15,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar4 = (*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24))(uVar3,iVar11,iVar4 + 1);\n      if (iVar4 != 0) {\n        uStack_64 = *(u32 *)(iVar4 + 8);\n        goto LAB_000990f4;\n      }\n      uStack_64 = 0;\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n    }\n    zFormat = sqlite3_mprintf((char *)(iVar4 + -0x7478),iVar11);\n    pJVar15 = (JsonParse *)zFormat;\n    (**(code **)(pcStack_70 + -0x7e40))(pJVar21,zFormat,0xffffffff);\n    pJVar2 = (JsonParse *)zFormat;\n    (**(code **)(pcStack_70 + -0x7f90))();\n  }" else (compound_statement "{\n    if (iVar11 == 0) {\nLAB_000990f4:\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n      if (uStack_64 != 0) {\nLAB_000990fc:\n        in_a3 = (u32 *)0xffffffff;\n        pJVar15 = (JsonParse *)&uStack_64;\n        (**(code **)(pcStack_70 + -0x7e28))(pJVar21,pJVar15,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar4 = (*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24))(uVar3,iVar11,iVar4 + 1);\n      if (iVar4 != 0) {\n        uStack_64 = *(u32 *)(iVar4 + 8);\n        goto LAB_000990f4;\n      }\n      uStack_64 = 0;\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n    }\n    zFormat = sqlite3_mprintf((char *)(iVar4 + -0x7478),iVar11);\n    pJVar15 = (JsonParse *)zFormat;\n    (**(code **)(pcStack_70 + -0x7e40))(pJVar21,zFormat,0xffffffff);\n    pJVar2 = (JsonParse *)zFormat;\n    (**(code **)(pcStack_70 + -0x7f90))();\n  }" { (if_statement "if (iVar11 == 0) {\nLAB_000990f4:\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n      if (uStack_64 != 0) {\nLAB_000990fc:\n        in_a3 = (u32 *)0xffffffff;\n        pJVar15 = (JsonParse *)&uStack_64;\n        (**(code **)(pcStack_70 + -0x7e28))(pJVar21,pJVar15,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar4 = (*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24))(uVar3,iVar11,iVar4 + 1);\n      if (iVar4 != 0) {\n        uStack_64 = *(u32 *)(iVar4 + 8);\n        goto LAB_000990f4;\n      }\n      uStack_64 = 0;\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n    }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000990f4:\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n      if (uStack_64 != 0) {\nLAB_000990fc:\n        in_a3 = (u32 *)0xffffffff;\n        pJVar15 = (JsonParse *)&uStack_64;\n        (**(code **)(pcStack_70 + -0x7e28))(pJVar21,pJVar15,4);\n        goto LAB_00099118;\n      }\n    }" { (labeled_statement "LAB_000990f4:\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);" statement_identifier : (expression_statement "iVar4 = *(int *)(pcStack_70 + -0x7fb4);" (assignment_expression "iVar4 = *(int *)(pcStack_70 + -0x7fb4)" identifier = (pointer_expression "*(int *)(pcStack_70 + -0x7fb4)" * (cast_expression "(int *)(pcStack_70 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_70 + -0x7fb4)" ( (binary_expression "pcStack_70 + -0x7fb4" identifier + number_literal) ))))) ;)) (if_statement "if (uStack_64 != 0) {\nLAB_000990fc:\n        in_a3 = (u32 *)0xffffffff;\n        pJVar15 = (JsonParse *)&uStack_64;\n        (**(code **)(pcStack_70 + -0x7e28))(pJVar21,pJVar15,4);\n        goto LAB_00099118;\n      }" if (parenthesized_expression "(uStack_64 != 0)" ( (binary_expression "uStack_64 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_000990fc:\n        in_a3 = (u32 *)0xffffffff;\n        pJVar15 = (JsonParse *)&uStack_64;\n        (**(code **)(pcStack_70 + -0x7e28))(pJVar21,pJVar15,4);\n        goto LAB_00099118;\n      }" { (labeled_statement "LAB_000990fc:\n        in_a3 = (u32 *)0xffffffff;" statement_identifier : (expression_statement "in_a3 = (u32 *)0xffffffff;" (assignment_expression "in_a3 = (u32 *)0xffffffff" identifier = (cast_expression "(u32 *)0xffffffff" ( (type_descriptor "u32 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pJVar15 = (JsonParse *)&uStack_64;" (assignment_expression "pJVar15 = (JsonParse *)&uStack_64" identifier = (cast_expression "(JsonParse *)&uStack_64" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_64" & identifier))) ;) (expression_statement "(**(code **)(pcStack_70 + -0x7e28))(pJVar21,pJVar15,4);" (call_expression "(**(code **)(pcStack_70 + -0x7e28))(pJVar21,pJVar15,4)" (parenthesized_expression "(**(code **)(pcStack_70 + -0x7e28))" ( (pointer_expression "**(code **)(pcStack_70 + -0x7e28)" * (pointer_expression "*(code **)(pcStack_70 + -0x7e28)" * (cast_expression "(code **)(pcStack_70 + -0x7e28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_70 + -0x7e28)" ( (binary_expression "pcStack_70 + -0x7e28" identifier + number_literal) ))))) )) (argument_list "(pJVar21,pJVar15,4)" ( identifier , identifier , number_literal ))) ;) (goto_statement "goto LAB_00099118;" goto statement_identifier ;) })) }) (else_clause "else {\n      iVar4 = (*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24))(uVar3,iVar11,iVar4 + 1);\n      if (iVar4 != 0) {\n        uStack_64 = *(u32 *)(iVar4 + 8);\n        goto LAB_000990f4;\n      }\n      uStack_64 = 0;\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n    }" else (compound_statement "{\n      iVar4 = (*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24))(uVar3,iVar11,iVar4 + 1);\n      if (iVar4 != 0) {\n        uStack_64 = *(u32 *)(iVar4 + 8);\n        goto LAB_000990f4;\n      }\n      uStack_64 = 0;\n      iVar4 = *(int *)(pcStack_70 + -0x7fb4);\n    }" { (expression_statement "iVar4 = (*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24))(uVar3,iVar11,iVar4 + 1);" (assignment_expression "iVar4 = (*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24))(uVar3,iVar11,iVar4 + 1)" identifier = (call_expression "(*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24))(uVar3,iVar11,iVar4 + 1)" (parenthesized_expression "(*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24))" ( (pointer_expression "*(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24)" * (cast_expression "(code *)(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_70 + -0x7ef0) + -0x2c24)" ( (binary_expression "*(int *)(pcStack_70 + -0x7ef0) + -0x2c24" (pointer_expression "*(int *)(pcStack_70 + -0x7ef0)" * (cast_expression "(int *)(pcStack_70 + -0x7ef0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_70 + -0x7ef0)" ( (binary_expression "pcStack_70 + -0x7ef0" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar3,iVar11,iVar4 + 1)" ( identifier , identifier , (binary_expression "iVar4 + 1" identifier + number_literal) )))) ;) (if_statement "if (iVar4 != 0) {\n        uStack_64 = *(u32 *)(iVar4 + 8);\n        goto LAB_000990f4;\n      }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n        uStack_64 = *(u32 *)(iVar4 + 8);\n        goto LAB_000990f4;\n      }" { (expression_statement "uStack_64 = *(u32 *)(iVar4 + 8);" (assignment_expression "uStack_64 = *(u32 *)(iVar4 + 8)" identifier = (pointer_expression "*(u32 *)(iVar4 + 8)" * (cast_expression "(u32 *)(iVar4 + 8)" ( (type_descriptor "u32 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 8)" ( (binary_expression "iVar4 + 8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000990f4;" goto statement_identifier ;) })) (expression_statement "uStack_64 = 0;" (assignment_expression "uStack_64 = 0" identifier = number_literal) ;) (expression_statement "iVar4 = *(int *)(pcStack_70 + -0x7fb4);" (assignment_expression "iVar4 = *(int *)(pcStack_70 + -0x7fb4)" identifier = (pointer_expression "*(int *)(pcStack_70 + -0x7fb4)" * (cast_expression "(int *)(pcStack_70 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_70 + -0x7fb4)" ( (binary_expression "pcStack_70 + -0x7fb4" identifier + number_literal) ))))) ;) }))) (expression_statement "zFormat = sqlite3_mprintf((char *)(iVar4 + -0x7478),iVar11);" (assignment_expression "zFormat = sqlite3_mprintf((char *)(iVar4 + -0x7478),iVar11)" identifier = (call_expression "sqlite3_mprintf((char *)(iVar4 + -0x7478),iVar11)" identifier (argument_list "((char *)(iVar4 + -0x7478),iVar11)" ( (cast_expression "(char *)(iVar4 + -0x7478)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + -0x7478)" ( (binary_expression "iVar4 + -0x7478" identifier + number_literal) ))) , identifier )))) ;) (expression_statement "pJVar15 = (JsonParse *)zFormat;" (assignment_expression "pJVar15 = (JsonParse *)zFormat" identifier = (cast_expression "(JsonParse *)zFormat" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "(**(code **)(pcStack_70 + -0x7e40))(pJVar21,zFormat,0xffffffff);" (call_expression "(**(code **)(pcStack_70 + -0x7e40))(pJVar21,zFormat,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_70 + -0x7e40))" ( (pointer_expression "**(code **)(pcStack_70 + -0x7e40)" * (pointer_expression "*(code **)(pcStack_70 + -0x7e40)" * (cast_expression "(code **)(pcStack_70 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_70 + -0x7e40)" ( (binary_expression "pcStack_70 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(pJVar21,zFormat,0xffffffff)" ( identifier , identifier , number_literal ))) ;) (expression_statement "pJVar2 = (JsonParse *)zFormat;" (assignment_expression "pJVar2 = (JsonParse *)zFormat" identifier = (cast_expression "(JsonParse *)zFormat" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "(**(code **)(pcStack_70 + -0x7f90))();" (call_expression "(**(code **)(pcStack_70 + -0x7f90))()" (parenthesized_expression "(**(code **)(pcStack_70 + -0x7f90))" ( (pointer_expression "**(code **)(pcStack_70 + -0x7f90)" * (pointer_expression "*(code **)(pcStack_70 + -0x7f90)" * (cast_expression "(code **)(pcStack_70 + -0x7f90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_70 + -0x7f90)" ( (binary_expression "pcStack_70 + -0x7f90" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) }))) (labeled_statement "LAB_00099118:\n  if (pJStack_5c == (JsonNode *)*piVar23) {\n    return;\n  }" statement_identifier : (if_statement "if (pJStack_5c == (JsonNode *)*piVar23) {\n    return;\n  }" if (parenthesized_expression "(pJStack_5c == (JsonNode *)*piVar23)" ( (binary_expression "pJStack_5c == (JsonNode *)*piVar23" identifier == (cast_expression "(JsonNode *)*piVar23" ( (type_descriptor "JsonNode *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar23" * identifier))) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) }))) (expression_statement "pcVar26 = *(code **)(pcStack_70 + -0x7ba0);" (assignment_expression "pcVar26 = *(code **)(pcStack_70 + -0x7ba0)" identifier = (pointer_expression "*(code **)(pcStack_70 + -0x7ba0)" * (cast_expression "(code **)(pcStack_70 + -0x7ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_70 + -0x7ba0)" ( (binary_expression "pcStack_70 + -0x7ba0" identifier + number_literal) ))))) ;) (expression_statement "pcVar27 = rtreeBestIndex;" (assignment_expression "pcVar27 = rtreeBestIndex" identifier = identifier) ;) (expression_statement "(*pcVar26)();" (call_expression "(*pcVar26)()" (parenthesized_expression "(*pcVar26)" ( (pointer_expression "*pcVar26" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pJStack_8c = pJVar21;" (assignment_expression "pJStack_8c = pJVar21" identifier = identifier) ;) (expression_statement "piStack_94 = piVar23;" (assignment_expression "piStack_94 = piVar23" identifier = identifier) ;) (expression_statement "iStack_90 = iVar11;" (assignment_expression "iStack_90 = iVar11" identifier = identifier) ;) (expression_statement "pJVar21 = &JStack_c8;" (assignment_expression "pJVar21 = &JStack_c8" identifier = (pointer_expression "&JStack_c8" & identifier)) ;) (expression_statement "pcStack_d0 = pcVar26 + 0xca310;" (assignment_expression "pcStack_d0 = pcVar26 + 0xca310" identifier = (binary_expression "pcVar26 + 0xca310" identifier + number_literal)) ;) (expression_statement "pcStack_84 = pcVar27;" (assignment_expression "pcStack_84 = pcVar27" identifier = identifier) ;) (expression_statement "pJStack_88 = pJVar22;" (assignment_expression "pJStack_88 = pJVar22" identifier = identifier) ;) (expression_statement "pJStack_98 = (JsonParse *)zFormat;" (assignment_expression "pJStack_98 = (JsonParse *)zFormat" identifier = (cast_expression "(JsonParse *)zFormat" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "piVar19 = *(int **)(pcVar26 + 0xc278c);" (assignment_expression "piVar19 = *(int **)(pcVar26 + 0xc278c)" identifier = (pointer_expression "*(int **)(pcVar26 + 0xc278c)" * (cast_expression "(int **)(pcVar26 + 0xc278c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar26 + 0xc278c)" ( (binary_expression "pcVar26 + 0xc278c" identifier + number_literal) ))))) ;) (expression_statement "uVar17 = pJVar15->nNode;" (assignment_expression "uVar17 = pJVar15->nNode" identifier = (field_expression "pJVar15->nNode" identifier -> field_identifier)) ;) (expression_statement "JStack_c8.nNode = 0;" (assignment_expression "JStack_c8.nNode = 0" (field_expression "JStack_c8.nNode" identifier . field_identifier) = number_literal) ;) (expression_statement "JStack_c8.nAlloc = 0;" (assignment_expression "JStack_c8.nAlloc = 0" (field_expression "JStack_c8.nAlloc" identifier . field_identifier) = number_literal) ;) (expression_statement "JStack_c8.aNode = (JsonNode *)0x0;" (assignment_expression "JStack_c8.aNode = (JsonNode *)0x0" (field_expression "JStack_c8.aNode" identifier . field_identifier) = (cast_expression "(JsonNode *)0x0" ( (type_descriptor "JsonNode *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "JStack_c8.zJson = (char *)0x0;" (assignment_expression "JStack_c8.zJson = (char *)0x0" (field_expression "JStack_c8.zJson" identifier . field_identifier) = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "JStack_c8.aUp = (u32 *)0x0;" (assignment_expression "JStack_c8.aUp = (u32 *)0x0" (field_expression "JStack_c8.aUp" identifier . field_identifier) = (cast_expression "(u32 *)0x0" ( (type_descriptor "u32 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "JStack_c8.oom = '\0';" (assignment_expression "JStack_c8.oom = '\0'" (field_expression "JStack_c8.oom" identifier . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "JStack_c8.nErr = '\0';" (assignment_expression "JStack_c8.nErr = '\0'" (field_expression "JStack_c8.nErr" identifier . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "JStack_c8.iDepth = 0;" (assignment_expression "JStack_c8.iDepth = 0" (field_expression "JStack_c8.iDepth" identifier . field_identifier) = number_literal) ;) (expression_statement "JStack_c8.nJson = 0;" (assignment_expression "JStack_c8.nJson = 0" (field_expression "JStack_c8.nJson" identifier . field_identifier) = number_literal) ;) (expression_statement "JStack_c8.iHold = 0;" (assignment_expression "JStack_c8.iHold = 0" (field_expression "JStack_c8.iHold" identifier . field_identifier) = number_literal) ;) (expression_statement "uStack_a8 = 0;" (assignment_expression "uStack_a8 = 0" identifier = number_literal) ;) (expression_statement "uStack_a4 = 0;" (assignment_expression "uStack_a4 = 0" identifier = number_literal) ;) (expression_statement "uStack_a0 = 0;" (assignment_expression "uStack_a0 = 0" identifier = number_literal) ;) (expression_statement "iStack_9c = *piVar19;" (assignment_expression "iStack_9c = *piVar19" identifier = (pointer_expression "*piVar19" * identifier)) ;) (expression_statement "pApnd = (sqlite3_value **)(uVar17 * 2);" (assignment_expression "pApnd = (sqlite3_value **)(uVar17 * 2)" identifier = (cast_expression "(sqlite3_value **)(uVar17 * 2)" ( (type_descriptor "sqlite3_value **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar17 * 2)" ( (binary_expression "uVar17 * 2" identifier * number_literal) )))) ;) (if_statement "if ((int)uVar17 < 1) {\n    pJVar22 = (JsonParse *)0x0;\n    pJVar15->oom = '\0';\n    pJVar15->nErr = '\0';\n    pJVar15->iDepth = 2;\n    pJVar15->iHold = 1;\nLAB_00099480:\n    puVar13 = pJVar2[1].aUp;\n    uVar25._0_1_ = pJVar2[1].oom;\n    uVar25._1_1_ = pJVar2[1].nErr;\n    uVar25._2_2_ = pJVar2[1].iDepth;\n    pJVar21 = (JsonParse *)((int)puVar13 >> ((uint)pJVar22 & 0x1f));\n    pJVar20 = pJVar21;\n    pJVar2 = (JsonParse *)\n             (((int)puVar13 << 1) << (~(uint)pJVar22 & 0x1f) | uVar25 >> ((uint)pJVar22 & 0x1f));\n    if (((uint)pJVar22 & 0x20) != 0) {\n      pJVar20 = (JsonParse *)((int)puVar13 >> 0x1f);\n      pJVar2 = pJVar21;\n    }\n    pJVar21 = pJVar2;\n    dVar28 = (double)(**(code **)(pcStack_d0 + -0x7f18))(pJVar20);\n    pJVar15[1].aUp = &pJVar20->nNode;\n    *(JsonParse **)&pJVar15[1].oom = pJVar2;\n    *(double *)&pJVar15[1].aNode = dVar28 * *(double *)(*(int *)(pcStack_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    uVar12 = pJVar15->nAlloc;\n    bVar1 = false;\n    uVar7 = uVar12;\n    do {\n      pcVar10 = (char *)(uVar7 + 4);\n      uVar7 = uVar7 + 0xc;\n      if (*pcVar10 == '@') {\n        bVar1 = true;\n      }\n    } while (uVar17 * 0xc + uVar12 != uVar7);\n    in_a3 = (u32 *)0x0;\n    pJVar20 = (JsonParse *)0x0;\n    iVar11 = 0;\nLAB_000993bc:\n    piVar23 = (int *)((int)in_a3 + uVar12);\n    if (!bVar1) {\n      if (*(char *)((int)piVar23 + 5) == '\0') goto LAB_0009939c;\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\n      if (iVar4 != 0) goto LAB_000993d8;\n      if (bVar14 != 2) goto LAB_00099394;\n      if (iVar11 == 0) {\n        iVar4 = 0;\n      }\n      else {\n        iVar6 = 0;\n        do {\n          iVar4 = iVar6 + 1;\n          pJVar15->aUp[iVar6 * 2] = 0;\n          *(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;\n          iVar6 = iVar4;\n        } while (iVar4 != iVar11);\n        iVar4 = iVar4 * 8;\n      }\n      in_a3 = (u32 *)0x1;\n      pJVar15->oom = '\0';\n      pJVar15->nErr = '\0';\n      pJVar15->iDepth = 1;\n      pJVar21 = *(JsonParse **)(pcVar26 + 0xc23f4);\n      iVar11 = pJVar21[-0xffffffff000003bd].nJson;\n      uVar17 = pJVar21[-0xffffffff000003bd].iHold;\n      *(undefined4 *)((int)pJVar15->aUp + iVar4) = 1;\n      pApnd = (sqlite3_value **)0x0;\n      *(undefined1 *)((int)pJVar15->aUp + iVar4 + 4) = 1;\n      pJVar15[1].aNode = (JsonNode *)iVar11;\n      pJVar15[1].zJson = (char *)uVar17;\n      pJVar15[1].oom = '\0';\n      pJVar15[1].nErr = '\0';\n      pJVar15[1].iDepth = 1;\n      pJVar15[1].aUp = (u32 *)0x0;\n      pJVar15[1].nJson = 1;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar23 + 5) == '\0') {\nLAB_0009939c:\n      pJVar22 = pJVar20;\n      if ((int)uVar17 <= iVar11 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\nLAB_000993d8:\n      if ((iVar4 < 1) || ((int)(uint)pJVar2->nErr < iVar4)) {\nLAB_00099394:\n        cVar18 = 'F';\n        if (bVar14 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar14 == 8) {\n        cVar18 = 'B';\n      }\n      else if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }\n      puVar13 = pJVar15->aUp;\n      pJVar22 = (JsonParse *)((int)&pJVar20->nNode + 2);\n      *(char *)((int)&pJVar20->nNode + (int)&JStack_c8.nNode) = cVar18;\n      *(char *)((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1)) = (char)*piVar23 + '/';\n      puVar13[iVar11 * 2] = (int)pJVar22 >> 1;\n      *(undefined1 *)(pJVar15->aUp + iVar11 * 2 + 1) = 1;\n      uVar17 = pJVar15->nNode;\n      pJVar20 = pJVar22;\n      if ((int)uVar17 <= iVar11 + 1) {\nLAB_00099470:\n        pApnd = (sqlite3_value **)(iVar11 + 1);\n        pJVar15->oom = '\0';\n        pJVar15->nErr = '\0';\n        pJVar15->iDepth = 2;\n        pJVar15->iHold = 1;\n        pJVar20 = pJVar22;\n        if (pJVar22 == (JsonParse *)0x0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    in_a3 = in_a3 + 3;\n    if ((int)pJVar20 < 0x28) goto code_r0x000993b8;\n    pJVar15->oom = '\0';\n    pJVar15->nErr = '\0';\n    pJVar15->iDepth = 2;\n    pJVar15->iHold = 1;\nLAB_00099544:\n    pApnd = (sqlite3_value **)(iVar11 + 1);\n    pcVar10 = sqlite3_mprintf((char *)(*(int *)(pcVar26 + 0xc2348) + 0x71f4));\n    pJVar15->nJson = (int)pcVar10;\n    if (pcVar10 != (char *)0x0) {\n      pJVar22 = (JsonParse *)((int)pJVar20 >> 1);\n      goto LAB_00099480;\n    }\n  }" if (parenthesized_expression "((int)uVar17 < 1)" ( (binary_expression "(int)uVar17 < 1" (cast_expression "(int)uVar17" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n    pJVar22 = (JsonParse *)0x0;\n    pJVar15->oom = '\0';\n    pJVar15->nErr = '\0';\n    pJVar15->iDepth = 2;\n    pJVar15->iHold = 1;\nLAB_00099480:\n    puVar13 = pJVar2[1].aUp;\n    uVar25._0_1_ = pJVar2[1].oom;\n    uVar25._1_1_ = pJVar2[1].nErr;\n    uVar25._2_2_ = pJVar2[1].iDepth;\n    pJVar21 = (JsonParse *)((int)puVar13 >> ((uint)pJVar22 & 0x1f));\n    pJVar20 = pJVar21;\n    pJVar2 = (JsonParse *)\n             (((int)puVar13 << 1) << (~(uint)pJVar22 & 0x1f) | uVar25 >> ((uint)pJVar22 & 0x1f));\n    if (((uint)pJVar22 & 0x20) != 0) {\n      pJVar20 = (JsonParse *)((int)puVar13 >> 0x1f);\n      pJVar2 = pJVar21;\n    }\n    pJVar21 = pJVar2;\n    dVar28 = (double)(**(code **)(pcStack_d0 + -0x7f18))(pJVar20);\n    pJVar15[1].aUp = &pJVar20->nNode;\n    *(JsonParse **)&pJVar15[1].oom = pJVar2;\n    *(double *)&pJVar15[1].aNode = dVar28 * *(double *)(*(int *)(pcStack_d0 + -0x7f1c) + -0x7780);\n  }" { (expression_statement "pJVar22 = (JsonParse *)0x0;" (assignment_expression "pJVar22 = (JsonParse *)0x0" identifier = (cast_expression "(JsonParse *)0x0" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pJVar15->oom = '\0';" (assignment_expression "pJVar15->oom = '\0'" (field_expression "pJVar15->oom" identifier -> field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pJVar15->nErr = '\0';" (assignment_expression "pJVar15->nErr = '\0'" (field_expression "pJVar15->nErr" identifier -> field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pJVar15->iDepth = 2;" (assignment_expression "pJVar15->iDepth = 2" (field_expression "pJVar15->iDepth" identifier -> field_identifier) = number_literal) ;) (expression_statement "pJVar15->iHold = 1;" (assignment_expression "pJVar15->iHold = 1" (field_expression "pJVar15->iHold" identifier -> field_identifier) = number_literal) ;) (labeled_statement "LAB_00099480:\n    puVar13 = pJVar2[1].aUp;" statement_identifier : (expression_statement "puVar13 = pJVar2[1].aUp;" (assignment_expression "puVar13 = pJVar2[1].aUp" identifier = (field_expression "pJVar2[1].aUp" (subscript_expression "pJVar2[1]" identifier [ number_literal ]) . field_identifier)) ;)) (expression_statement "uVar25._0_1_ = pJVar2[1].oom;" (assignment_expression "uVar25._0_1_ = pJVar2[1].oom" (field_expression "uVar25._0_1_" identifier . field_identifier) = (field_expression "pJVar2[1].oom" (subscript_expression "pJVar2[1]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "uVar25._1_1_ = pJVar2[1].nErr;" (assignment_expression "uVar25._1_1_ = pJVar2[1].nErr" (field_expression "uVar25._1_1_" identifier . field_identifier) = (field_expression "pJVar2[1].nErr" (subscript_expression "pJVar2[1]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "uVar25._2_2_ = pJVar2[1].iDepth;" (assignment_expression "uVar25._2_2_ = pJVar2[1].iDepth" (field_expression "uVar25._2_2_" identifier . field_identifier) = (field_expression "pJVar2[1].iDepth" (subscript_expression "pJVar2[1]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "pJVar21 = (JsonParse *)((int)puVar13 >> ((uint)pJVar22 & 0x1f));" (assignment_expression "pJVar21 = (JsonParse *)((int)puVar13 >> ((uint)pJVar22 & 0x1f))" identifier = (cast_expression "(JsonParse *)((int)puVar13 >> ((uint)pJVar22 & 0x1f))" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar13 >> ((uint)pJVar22 & 0x1f))" ( (binary_expression "(int)puVar13 >> ((uint)pJVar22 & 0x1f)" (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier) >> (parenthesized_expression "((uint)pJVar22 & 0x1f)" ( (binary_expression "(uint)pJVar22 & 0x1f" (cast_expression "(uint)pJVar22" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))) )))) ;) (expression_statement "pJVar20 = pJVar21;" (assignment_expression "pJVar20 = pJVar21" identifier = identifier) ;) (expression_statement "pJVar2 = (JsonParse *)\n             (((int)puVar13 << 1) << (~(uint)pJVar22 & 0x1f) | uVar25 >> ((uint)pJVar22 & 0x1f));" (assignment_expression "pJVar2 = (JsonParse *)\n             (((int)puVar13 << 1) << (~(uint)pJVar22 & 0x1f) | uVar25 >> ((uint)pJVar22 & 0x1f))" identifier = (cast_expression "(JsonParse *)\n             (((int)puVar13 << 1) << (~(uint)pJVar22 & 0x1f) | uVar25 >> ((uint)pJVar22 & 0x1f))" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(((int)puVar13 << 1) << (~(uint)pJVar22 & 0x1f) | uVar25 >> ((uint)pJVar22 & 0x1f))" ( (binary_expression "((int)puVar13 << 1) << (~(uint)pJVar22 & 0x1f) | uVar25 >> ((uint)pJVar22 & 0x1f)" (binary_expression "((int)puVar13 << 1) << (~(uint)pJVar22 & 0x1f)" (parenthesized_expression "((int)puVar13 << 1)" ( (binary_expression "(int)puVar13 << 1" (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) )) << (parenthesized_expression "(~(uint)pJVar22 & 0x1f)" ( (binary_expression "~(uint)pJVar22 & 0x1f" (unary_expression "~(uint)pJVar22" ~ (cast_expression "(uint)pJVar22" ( (type_descriptor "uint" type_identifier) ) identifier)) & number_literal) ))) | (binary_expression "uVar25 >> ((uint)pJVar22 & 0x1f)" identifier >> (parenthesized_expression "((uint)pJVar22 & 0x1f)" ( (binary_expression "(uint)pJVar22 & 0x1f" (cast_expression "(uint)pJVar22" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )))) )))) ;) (if_statement "if (((uint)pJVar22 & 0x20) != 0) {\n      pJVar20 = (JsonParse *)((int)puVar13 >> 0x1f);\n      pJVar2 = pJVar21;\n    }" if (parenthesized_expression "(((uint)pJVar22 & 0x20) != 0)" ( (binary_expression "((uint)pJVar22 & 0x20) != 0" (parenthesized_expression "((uint)pJVar22 & 0x20)" ( (binary_expression "(uint)pJVar22 & 0x20" (cast_expression "(uint)pJVar22" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n      pJVar20 = (JsonParse *)((int)puVar13 >> 0x1f);\n      pJVar2 = pJVar21;\n    }" { (expression_statement "pJVar20 = (JsonParse *)((int)puVar13 >> 0x1f);" (assignment_expression "pJVar20 = (JsonParse *)((int)puVar13 >> 0x1f)" identifier = (cast_expression "(JsonParse *)((int)puVar13 >> 0x1f)" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar13 >> 0x1f)" ( (binary_expression "(int)puVar13 >> 0x1f" (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )))) ;) (expression_statement "pJVar2 = pJVar21;" (assignment_expression "pJVar2 = pJVar21" identifier = identifier) ;) })) (expression_statement "pJVar21 = pJVar2;" (assignment_expression "pJVar21 = pJVar2" identifier = identifier) ;) (expression_statement "dVar28 = (double)(**(code **)(pcStack_d0 + -0x7f18))(pJVar20);" (assignment_expression "dVar28 = (double)(**(code **)(pcStack_d0 + -0x7f18))(pJVar20)" identifier = (cast_expression "(double)(**(code **)(pcStack_d0 + -0x7f18))(pJVar20)" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcStack_d0 + -0x7f18))(pJVar20)" (parenthesized_expression "(**(code **)(pcStack_d0 + -0x7f18))" ( (pointer_expression "**(code **)(pcStack_d0 + -0x7f18)" * (pointer_expression "*(code **)(pcStack_d0 + -0x7f18)" * (cast_expression "(code **)(pcStack_d0 + -0x7f18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_d0 + -0x7f18)" ( (binary_expression "pcStack_d0 + -0x7f18" identifier + number_literal) ))))) )) (argument_list "(pJVar20)" ( identifier ))))) ;) (expression_statement "pJVar15[1].aUp = &pJVar20->nNode;" (assignment_expression "pJVar15[1].aUp = &pJVar20->nNode" (field_expression "pJVar15[1].aUp" (subscript_expression "pJVar15[1]" identifier [ number_literal ]) . field_identifier) = (pointer_expression "&pJVar20->nNode" & (field_expression "pJVar20->nNode" identifier -> field_identifier))) ;) (expression_statement "*(JsonParse **)&pJVar15[1].oom = pJVar2;" (assignment_expression "*(JsonParse **)&pJVar15[1].oom = pJVar2" (pointer_expression "*(JsonParse **)&pJVar15[1].oom" * (cast_expression "(JsonParse **)&pJVar15[1].oom" ( (type_descriptor "JsonParse **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&pJVar15[1].oom" & (field_expression "pJVar15[1].oom" (subscript_expression "pJVar15[1]" identifier [ number_literal ]) . field_identifier)))) = identifier) ;) (expression_statement "*(double *)&pJVar15[1].aNode = dVar28 * *(double *)(*(int *)(pcStack_d0 + -0x7f1c) + -0x7780);" (assignment_expression "*(double *)&pJVar15[1].aNode = dVar28 * *(double *)(*(int *)(pcStack_d0 + -0x7f1c) + -0x7780)" (pointer_expression "*(double *)&pJVar15[1].aNode" * (cast_expression "(double *)&pJVar15[1].aNode" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pJVar15[1].aNode" & (field_expression "pJVar15[1].aNode" (subscript_expression "pJVar15[1]" identifier [ number_literal ]) . field_identifier)))) = (binary_expression "dVar28 * *(double *)(*(int *)(pcStack_d0 + -0x7f1c) + -0x7780)" identifier * (pointer_expression "*(double *)(*(int *)(pcStack_d0 + -0x7f1c) + -0x7780)" * (cast_expression "(double *)(*(int *)(pcStack_d0 + -0x7f1c) + -0x7780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_d0 + -0x7f1c) + -0x7780)" ( (binary_expression "*(int *)(pcStack_d0 + -0x7f1c) + -0x7780" (pointer_expression "*(int *)(pcStack_d0 + -0x7f1c)" * (cast_expression "(int *)(pcStack_d0 + -0x7f1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_d0 + -0x7f1c)" ( (binary_expression "pcStack_d0 + -0x7f1c" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n    uVar12 = pJVar15->nAlloc;\n    bVar1 = false;\n    uVar7 = uVar12;\n    do {\n      pcVar10 = (char *)(uVar7 + 4);\n      uVar7 = uVar7 + 0xc;\n      if (*pcVar10 == '@') {\n        bVar1 = true;\n      }\n    } while (uVar17 * 0xc + uVar12 != uVar7);\n    in_a3 = (u32 *)0x0;\n    pJVar20 = (JsonParse *)0x0;\n    iVar11 = 0;\nLAB_000993bc:\n    piVar23 = (int *)((int)in_a3 + uVar12);\n    if (!bVar1) {\n      if (*(char *)((int)piVar23 + 5) == '\0') goto LAB_0009939c;\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\n      if (iVar4 != 0) goto LAB_000993d8;\n      if (bVar14 != 2) goto LAB_00099394;\n      if (iVar11 == 0) {\n        iVar4 = 0;\n      }\n      else {\n        iVar6 = 0;\n        do {\n          iVar4 = iVar6 + 1;\n          pJVar15->aUp[iVar6 * 2] = 0;\n          *(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;\n          iVar6 = iVar4;\n        } while (iVar4 != iVar11);\n        iVar4 = iVar4 * 8;\n      }\n      in_a3 = (u32 *)0x1;\n      pJVar15->oom = '\0';\n      pJVar15->nErr = '\0';\n      pJVar15->iDepth = 1;\n      pJVar21 = *(JsonParse **)(pcVar26 + 0xc23f4);\n      iVar11 = pJVar21[-0xffffffff000003bd].nJson;\n      uVar17 = pJVar21[-0xffffffff000003bd].iHold;\n      *(undefined4 *)((int)pJVar15->aUp + iVar4) = 1;\n      pApnd = (sqlite3_value **)0x0;\n      *(undefined1 *)((int)pJVar15->aUp + iVar4 + 4) = 1;\n      pJVar15[1].aNode = (JsonNode *)iVar11;\n      pJVar15[1].zJson = (char *)uVar17;\n      pJVar15[1].oom = '\0';\n      pJVar15[1].nErr = '\0';\n      pJVar15[1].iDepth = 1;\n      pJVar15[1].aUp = (u32 *)0x0;\n      pJVar15[1].nJson = 1;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar23 + 5) == '\0') {\nLAB_0009939c:\n      pJVar22 = pJVar20;\n      if ((int)uVar17 <= iVar11 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\nLAB_000993d8:\n      if ((iVar4 < 1) || ((int)(uint)pJVar2->nErr < iVar4)) {\nLAB_00099394:\n        cVar18 = 'F';\n        if (bVar14 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar14 == 8) {\n        cVar18 = 'B';\n      }\n      else if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }\n      puVar13 = pJVar15->aUp;\n      pJVar22 = (JsonParse *)((int)&pJVar20->nNode + 2);\n      *(char *)((int)&pJVar20->nNode + (int)&JStack_c8.nNode) = cVar18;\n      *(char *)((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1)) = (char)*piVar23 + '/';\n      puVar13[iVar11 * 2] = (int)pJVar22 >> 1;\n      *(undefined1 *)(pJVar15->aUp + iVar11 * 2 + 1) = 1;\n      uVar17 = pJVar15->nNode;\n      pJVar20 = pJVar22;\n      if ((int)uVar17 <= iVar11 + 1) {\nLAB_00099470:\n        pApnd = (sqlite3_value **)(iVar11 + 1);\n        pJVar15->oom = '\0';\n        pJVar15->nErr = '\0';\n        pJVar15->iDepth = 2;\n        pJVar15->iHold = 1;\n        pJVar20 = pJVar22;\n        if (pJVar22 == (JsonParse *)0x0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    in_a3 = in_a3 + 3;\n    if ((int)pJVar20 < 0x28) goto code_r0x000993b8;\n    pJVar15->oom = '\0';\n    pJVar15->nErr = '\0';\n    pJVar15->iDepth = 2;\n    pJVar15->iHold = 1;\nLAB_00099544:\n    pApnd = (sqlite3_value **)(iVar11 + 1);\n    pcVar10 = sqlite3_mprintf((char *)(*(int *)(pcVar26 + 0xc2348) + 0x71f4));\n    pJVar15->nJson = (int)pcVar10;\n    if (pcVar10 != (char *)0x0) {\n      pJVar22 = (JsonParse *)((int)pJVar20 >> 1);\n      goto LAB_00099480;\n    }\n  }" else (compound_statement "{\n    uVar12 = pJVar15->nAlloc;\n    bVar1 = false;\n    uVar7 = uVar12;\n    do {\n      pcVar10 = (char *)(uVar7 + 4);\n      uVar7 = uVar7 + 0xc;\n      if (*pcVar10 == '@') {\n        bVar1 = true;\n      }\n    } while (uVar17 * 0xc + uVar12 != uVar7);\n    in_a3 = (u32 *)0x0;\n    pJVar20 = (JsonParse *)0x0;\n    iVar11 = 0;\nLAB_000993bc:\n    piVar23 = (int *)((int)in_a3 + uVar12);\n    if (!bVar1) {\n      if (*(char *)((int)piVar23 + 5) == '\0') goto LAB_0009939c;\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\n      if (iVar4 != 0) goto LAB_000993d8;\n      if (bVar14 != 2) goto LAB_00099394;\n      if (iVar11 == 0) {\n        iVar4 = 0;\n      }\n      else {\n        iVar6 = 0;\n        do {\n          iVar4 = iVar6 + 1;\n          pJVar15->aUp[iVar6 * 2] = 0;\n          *(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;\n          iVar6 = iVar4;\n        } while (iVar4 != iVar11);\n        iVar4 = iVar4 * 8;\n      }\n      in_a3 = (u32 *)0x1;\n      pJVar15->oom = '\0';\n      pJVar15->nErr = '\0';\n      pJVar15->iDepth = 1;\n      pJVar21 = *(JsonParse **)(pcVar26 + 0xc23f4);\n      iVar11 = pJVar21[-0xffffffff000003bd].nJson;\n      uVar17 = pJVar21[-0xffffffff000003bd].iHold;\n      *(undefined4 *)((int)pJVar15->aUp + iVar4) = 1;\n      pApnd = (sqlite3_value **)0x0;\n      *(undefined1 *)((int)pJVar15->aUp + iVar4 + 4) = 1;\n      pJVar15[1].aNode = (JsonNode *)iVar11;\n      pJVar15[1].zJson = (char *)uVar17;\n      pJVar15[1].oom = '\0';\n      pJVar15[1].nErr = '\0';\n      pJVar15[1].iDepth = 1;\n      pJVar15[1].aUp = (u32 *)0x0;\n      pJVar15[1].nJson = 1;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar23 + 5) == '\0') {\nLAB_0009939c:\n      pJVar22 = pJVar20;\n      if ((int)uVar17 <= iVar11 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\nLAB_000993d8:\n      if ((iVar4 < 1) || ((int)(uint)pJVar2->nErr < iVar4)) {\nLAB_00099394:\n        cVar18 = 'F';\n        if (bVar14 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar14 == 8) {\n        cVar18 = 'B';\n      }\n      else if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }\n      puVar13 = pJVar15->aUp;\n      pJVar22 = (JsonParse *)((int)&pJVar20->nNode + 2);\n      *(char *)((int)&pJVar20->nNode + (int)&JStack_c8.nNode) = cVar18;\n      *(char *)((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1)) = (char)*piVar23 + '/';\n      puVar13[iVar11 * 2] = (int)pJVar22 >> 1;\n      *(undefined1 *)(pJVar15->aUp + iVar11 * 2 + 1) = 1;\n      uVar17 = pJVar15->nNode;\n      pJVar20 = pJVar22;\n      if ((int)uVar17 <= iVar11 + 1) {\nLAB_00099470:\n        pApnd = (sqlite3_value **)(iVar11 + 1);\n        pJVar15->oom = '\0';\n        pJVar15->nErr = '\0';\n        pJVar15->iDepth = 2;\n        pJVar15->iHold = 1;\n        pJVar20 = pJVar22;\n        if (pJVar22 == (JsonParse *)0x0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    in_a3 = in_a3 + 3;\n    if ((int)pJVar20 < 0x28) goto code_r0x000993b8;\n    pJVar15->oom = '\0';\n    pJVar15->nErr = '\0';\n    pJVar15->iDepth = 2;\n    pJVar15->iHold = 1;\nLAB_00099544:\n    pApnd = (sqlite3_value **)(iVar11 + 1);\n    pcVar10 = sqlite3_mprintf((char *)(*(int *)(pcVar26 + 0xc2348) + 0x71f4));\n    pJVar15->nJson = (int)pcVar10;\n    if (pcVar10 != (char *)0x0) {\n      pJVar22 = (JsonParse *)((int)pJVar20 >> 1);\n      goto LAB_00099480;\n    }\n  }" { (expression_statement "uVar12 = pJVar15->nAlloc;" (assignment_expression "uVar12 = pJVar15->nAlloc" identifier = (field_expression "pJVar15->nAlloc" identifier -> field_identifier)) ;) (expression_statement "bVar1 = false;" (assignment_expression "bVar1 = false" identifier = false) ;) (expression_statement "uVar7 = uVar12;" (assignment_expression "uVar7 = uVar12" identifier = identifier) ;) (do_statement "do {\n      pcVar10 = (char *)(uVar7 + 4);\n      uVar7 = uVar7 + 0xc;\n      if (*pcVar10 == '@') {\n        bVar1 = true;\n      }\n    } while (uVar17 * 0xc + uVar12 != uVar7);" do (compound_statement "{\n      pcVar10 = (char *)(uVar7 + 4);\n      uVar7 = uVar7 + 0xc;\n      if (*pcVar10 == '@') {\n        bVar1 = true;\n      }\n    }" { (expression_statement "pcVar10 = (char *)(uVar7 + 4);" (assignment_expression "pcVar10 = (char *)(uVar7 + 4)" identifier = (cast_expression "(char *)(uVar7 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar7 + 4)" ( (binary_expression "uVar7 + 4" identifier + number_literal) )))) ;) (expression_statement "uVar7 = uVar7 + 0xc;" (assignment_expression "uVar7 = uVar7 + 0xc" identifier = (binary_expression "uVar7 + 0xc" identifier + number_literal)) ;) (if_statement "if (*pcVar10 == '@') {\n        bVar1 = true;\n      }" if (parenthesized_expression "(*pcVar10 == '@')" ( (binary_expression "*pcVar10 == '@'" (pointer_expression "*pcVar10" * identifier) == (char_literal "'@'" ' character ')) )) (compound_statement "{\n        bVar1 = true;\n      }" { (expression_statement "bVar1 = true;" (assignment_expression "bVar1 = true" identifier = true) ;) })) }) while (parenthesized_expression "(uVar17 * 0xc + uVar12 != uVar7)" ( (binary_expression "uVar17 * 0xc + uVar12 != uVar7" (binary_expression "uVar17 * 0xc + uVar12" (binary_expression "uVar17 * 0xc" identifier * number_literal) + identifier) != identifier) )) ;) (expression_statement "in_a3 = (u32 *)0x0;" (assignment_expression "in_a3 = (u32 *)0x0" identifier = (cast_expression "(u32 *)0x0" ( (type_descriptor "u32 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pJVar20 = (JsonParse *)0x0;" (assignment_expression "pJVar20 = (JsonParse *)0x0" identifier = (cast_expression "(JsonParse *)0x0" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar11 = 0;" (assignment_expression "iVar11 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000993bc:\n    piVar23 = (int *)((int)in_a3 + uVar12);" statement_identifier : (expression_statement "piVar23 = (int *)((int)in_a3 + uVar12);" (assignment_expression "piVar23 = (int *)((int)in_a3 + uVar12)" identifier = (cast_expression "(int *)((int)in_a3 + uVar12)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)in_a3 + uVar12)" ( (binary_expression "(int)in_a3 + uVar12" (cast_expression "(int)in_a3" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;)) (if_statement "if (!bVar1) {\n      if (*(char *)((int)piVar23 + 5) == '\0') goto LAB_0009939c;\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\n      if (iVar4 != 0) goto LAB_000993d8;\n      if (bVar14 != 2) goto LAB_00099394;\n      if (iVar11 == 0) {\n        iVar4 = 0;\n      }\n      else {\n        iVar6 = 0;\n        do {\n          iVar4 = iVar6 + 1;\n          pJVar15->aUp[iVar6 * 2] = 0;\n          *(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;\n          iVar6 = iVar4;\n        } while (iVar4 != iVar11);\n        iVar4 = iVar4 * 8;\n      }\n      in_a3 = (u32 *)0x1;\n      pJVar15->oom = '\0';\n      pJVar15->nErr = '\0';\n      pJVar15->iDepth = 1;\n      pJVar21 = *(JsonParse **)(pcVar26 + 0xc23f4);\n      iVar11 = pJVar21[-0xffffffff000003bd].nJson;\n      uVar17 = pJVar21[-0xffffffff000003bd].iHold;\n      *(undefined4 *)((int)pJVar15->aUp + iVar4) = 1;\n      pApnd = (sqlite3_value **)0x0;\n      *(undefined1 *)((int)pJVar15->aUp + iVar4 + 4) = 1;\n      pJVar15[1].aNode = (JsonNode *)iVar11;\n      pJVar15[1].zJson = (char *)uVar17;\n      pJVar15[1].oom = '\0';\n      pJVar15[1].nErr = '\0';\n      pJVar15[1].iDepth = 1;\n      pJVar15[1].aUp = (u32 *)0x0;\n      pJVar15[1].nJson = 1;\n      goto LAB_000994e0;\n    }" if (parenthesized_expression "(!bVar1)" ( (unary_expression "!bVar1" ! identifier) )) (compound_statement "{\n      if (*(char *)((int)piVar23 + 5) == '\0') goto LAB_0009939c;\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\n      if (iVar4 != 0) goto LAB_000993d8;\n      if (bVar14 != 2) goto LAB_00099394;\n      if (iVar11 == 0) {\n        iVar4 = 0;\n      }\n      else {\n        iVar6 = 0;\n        do {\n          iVar4 = iVar6 + 1;\n          pJVar15->aUp[iVar6 * 2] = 0;\n          *(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;\n          iVar6 = iVar4;\n        } while (iVar4 != iVar11);\n        iVar4 = iVar4 * 8;\n      }\n      in_a3 = (u32 *)0x1;\n      pJVar15->oom = '\0';\n      pJVar15->nErr = '\0';\n      pJVar15->iDepth = 1;\n      pJVar21 = *(JsonParse **)(pcVar26 + 0xc23f4);\n      iVar11 = pJVar21[-0xffffffff000003bd].nJson;\n      uVar17 = pJVar21[-0xffffffff000003bd].iHold;\n      *(undefined4 *)((int)pJVar15->aUp + iVar4) = 1;\n      pApnd = (sqlite3_value **)0x0;\n      *(undefined1 *)((int)pJVar15->aUp + iVar4 + 4) = 1;\n      pJVar15[1].aNode = (JsonNode *)iVar11;\n      pJVar15[1].zJson = (char *)uVar17;\n      pJVar15[1].oom = '\0';\n      pJVar15[1].nErr = '\0';\n      pJVar15[1].iDepth = 1;\n      pJVar15[1].aUp = (u32 *)0x0;\n      pJVar15[1].nJson = 1;\n      goto LAB_000994e0;\n    }" { (if_statement "if (*(char *)((int)piVar23 + 5) == '\0') goto LAB_0009939c;" if (parenthesized_expression "(*(char *)((int)piVar23 + 5) == '\0')" ( (binary_expression "*(char *)((int)piVar23 + 5) == '\0'" (pointer_expression "*(char *)((int)piVar23 + 5)" * (cast_expression "(char *)((int)piVar23 + 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar23 + 5)" ( (binary_expression "(int)piVar23 + 5" (cast_expression "(int)piVar23" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) (expression_statement "iVar4 = *piVar23;" (assignment_expression "iVar4 = *piVar23" identifier = (pointer_expression "*piVar23" * identifier)) ;) (expression_statement "bVar14 = *(byte *)(piVar23 + 1);" (assignment_expression "bVar14 = *(byte *)(piVar23 + 1)" identifier = (pointer_expression "*(byte *)(piVar23 + 1)" * (cast_expression "(byte *)(piVar23 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar23 + 1)" ( (binary_expression "piVar23 + 1" identifier + number_literal) ))))) ;) (if_statement "if (iVar4 != 0) goto LAB_000993d8;" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000993d8;" goto statement_identifier ;)) (if_statement "if (bVar14 != 2) goto LAB_00099394;" if (parenthesized_expression "(bVar14 != 2)" ( (binary_expression "bVar14 != 2" identifier != number_literal) )) (goto_statement "goto LAB_00099394;" goto statement_identifier ;)) (if_statement "if (iVar11 == 0) {\n        iVar4 = 0;\n      }\n      else {\n        iVar6 = 0;\n        do {\n          iVar4 = iVar6 + 1;\n          pJVar15->aUp[iVar6 * 2] = 0;\n          *(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;\n          iVar6 = iVar4;\n        } while (iVar4 != iVar11);\n        iVar4 = iVar4 * 8;\n      }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n        iVar4 = 0;\n      }" { (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;) }) (else_clause "else {\n        iVar6 = 0;\n        do {\n          iVar4 = iVar6 + 1;\n          pJVar15->aUp[iVar6 * 2] = 0;\n          *(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;\n          iVar6 = iVar4;\n        } while (iVar4 != iVar11);\n        iVar4 = iVar4 * 8;\n      }" else (compound_statement "{\n        iVar6 = 0;\n        do {\n          iVar4 = iVar6 + 1;\n          pJVar15->aUp[iVar6 * 2] = 0;\n          *(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;\n          iVar6 = iVar4;\n        } while (iVar4 != iVar11);\n        iVar4 = iVar4 * 8;\n      }" { (expression_statement "iVar6 = 0;" (assignment_expression "iVar6 = 0" identifier = number_literal) ;) (do_statement "do {\n          iVar4 = iVar6 + 1;\n          pJVar15->aUp[iVar6 * 2] = 0;\n          *(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;\n          iVar6 = iVar4;\n        } while (iVar4 != iVar11);" do (compound_statement "{\n          iVar4 = iVar6 + 1;\n          pJVar15->aUp[iVar6 * 2] = 0;\n          *(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;\n          iVar6 = iVar4;\n        }" { (expression_statement "iVar4 = iVar6 + 1;" (assignment_expression "iVar4 = iVar6 + 1" identifier = (binary_expression "iVar6 + 1" identifier + number_literal)) ;) (expression_statement "pJVar15->aUp[iVar6 * 2] = 0;" (assignment_expression "pJVar15->aUp[iVar6 * 2] = 0" (subscript_expression "pJVar15->aUp[iVar6 * 2]" (field_expression "pJVar15->aUp" identifier -> field_identifier) [ (binary_expression "iVar6 * 2" identifier * number_literal) ]) = number_literal) ;) (expression_statement "*(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0;" (assignment_expression "*(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1) = 0" (pointer_expression "*(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1)" * (cast_expression "(undefined1 *)(pJVar15->aUp + iVar6 * 2 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pJVar15->aUp + iVar6 * 2 + 1)" ( (binary_expression "pJVar15->aUp + iVar6 * 2 + 1" (binary_expression "pJVar15->aUp + iVar6 * 2" (field_expression "pJVar15->aUp" identifier -> field_identifier) + (binary_expression "iVar6 * 2" identifier * number_literal)) + number_literal) )))) = number_literal) ;) (expression_statement "iVar6 = iVar4;" (assignment_expression "iVar6 = iVar4" identifier = identifier) ;) }) while (parenthesized_expression "(iVar4 != iVar11)" ( (binary_expression "iVar4 != iVar11" identifier != identifier) )) ;) (expression_statement "iVar4 = iVar4 * 8;" (assignment_expression "iVar4 = iVar4 * 8" identifier = (binary_expression "iVar4 * 8" identifier * number_literal)) ;) }))) (expression_statement "in_a3 = (u32 *)0x1;" (assignment_expression "in_a3 = (u32 *)0x1" identifier = (cast_expression "(u32 *)0x1" ( (type_descriptor "u32 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pJVar15->oom = '\0';" (assignment_expression "pJVar15->oom = '\0'" (field_expression "pJVar15->oom" identifier -> field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pJVar15->nErr = '\0';" (assignment_expression "pJVar15->nErr = '\0'" (field_expression "pJVar15->nErr" identifier -> field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pJVar15->iDepth = 1;" (assignment_expression "pJVar15->iDepth = 1" (field_expression "pJVar15->iDepth" identifier -> field_identifier) = number_literal) ;) (expression_statement "pJVar21 = *(JsonParse **)(pcVar26 + 0xc23f4);" (assignment_expression "pJVar21 = *(JsonParse **)(pcVar26 + 0xc23f4)" identifier = (pointer_expression "*(JsonParse **)(pcVar26 + 0xc23f4)" * (cast_expression "(JsonParse **)(pcVar26 + 0xc23f4)" ( (type_descriptor "JsonParse **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar26 + 0xc23f4)" ( (binary_expression "pcVar26 + 0xc23f4" identifier + number_literal) ))))) ;) (expression_statement "iVar11 = pJVar21[-0xffffffff000003bd].nJson;" (assignment_expression "iVar11 = pJVar21[-0xffffffff000003bd].nJson" identifier = (field_expression "pJVar21[-0xffffffff000003bd].nJson" (subscript_expression "pJVar21[-0xffffffff000003bd]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "uVar17 = pJVar21[-0xffffffff000003bd].iHold;" (assignment_expression "uVar17 = pJVar21[-0xffffffff000003bd].iHold" identifier = (field_expression "pJVar21[-0xffffffff000003bd].iHold" (subscript_expression "pJVar21[-0xffffffff000003bd]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "*(undefined4 *)((int)pJVar15->aUp + iVar4) = 1;" (assignment_expression "*(undefined4 *)((int)pJVar15->aUp + iVar4) = 1" (pointer_expression "*(undefined4 *)((int)pJVar15->aUp + iVar4)" * (cast_expression "(undefined4 *)((int)pJVar15->aUp + iVar4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pJVar15->aUp + iVar4)" ( (binary_expression "(int)pJVar15->aUp + iVar4" (cast_expression "(int)pJVar15->aUp" ( (type_descriptor "int" primitive_type) ) (field_expression "pJVar15->aUp" identifier -> field_identifier)) + identifier) )))) = number_literal) ;) (expression_statement "pApnd = (sqlite3_value **)0x0;" (assignment_expression "pApnd = (sqlite3_value **)0x0" identifier = (cast_expression "(sqlite3_value **)0x0" ( (type_descriptor "sqlite3_value **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "*(undefined1 *)((int)pJVar15->aUp + iVar4 + 4) = 1;" (assignment_expression "*(undefined1 *)((int)pJVar15->aUp + iVar4 + 4) = 1" (pointer_expression "*(undefined1 *)((int)pJVar15->aUp + iVar4 + 4)" * (cast_expression "(undefined1 *)((int)pJVar15->aUp + iVar4 + 4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pJVar15->aUp + iVar4 + 4)" ( (binary_expression "(int)pJVar15->aUp + iVar4 + 4" (binary_expression "(int)pJVar15->aUp + iVar4" (cast_expression "(int)pJVar15->aUp" ( (type_descriptor "int" primitive_type) ) (field_expression "pJVar15->aUp" identifier -> field_identifier)) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "pJVar15[1].aNode = (JsonNode *)iVar11;" (assignment_expression "pJVar15[1].aNode = (JsonNode *)iVar11" (field_expression "pJVar15[1].aNode" (subscript_expression "pJVar15[1]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(JsonNode *)iVar11" ( (type_descriptor "JsonNode *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pJVar15[1].zJson = (char *)uVar17;" (assignment_expression "pJVar15[1].zJson = (char *)uVar17" (field_expression "pJVar15[1].zJson" (subscript_expression "pJVar15[1]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(char *)uVar17" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pJVar15[1].oom = '\0';" (assignment_expression "pJVar15[1].oom = '\0'" (field_expression "pJVar15[1].oom" (subscript_expression "pJVar15[1]" identifier [ number_literal ]) . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pJVar15[1].nErr = '\0';" (assignment_expression "pJVar15[1].nErr = '\0'" (field_expression "pJVar15[1].nErr" (subscript_expression "pJVar15[1]" identifier [ number_literal ]) . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pJVar15[1].iDepth = 1;" (assignment_expression "pJVar15[1].iDepth = 1" (field_expression "pJVar15[1].iDepth" (subscript_expression "pJVar15[1]" identifier [ number_literal ]) . field_identifier) = number_literal) ;) (expression_statement "pJVar15[1].aUp = (u32 *)0x0;" (assignment_expression "pJVar15[1].aUp = (u32 *)0x0" (field_expression "pJVar15[1].aUp" (subscript_expression "pJVar15[1]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(u32 *)0x0" ( (type_descriptor "u32 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pJVar15[1].nJson = 1;" (assignment_expression "pJVar15[1].nJson = 1" (field_expression "pJVar15[1].nJson" (subscript_expression "pJVar15[1]" identifier [ number_literal ]) . field_identifier) = number_literal) ;) (goto_statement "goto LAB_000994e0;" goto statement_identifier ;) })) (if_statement "if (*(char *)((int)piVar23 + 5) == '\0') {\nLAB_0009939c:\n      pJVar22 = pJVar20;\n      if ((int)uVar17 <= iVar11 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\nLAB_000993d8:\n      if ((iVar4 < 1) || ((int)(uint)pJVar2->nErr < iVar4)) {\nLAB_00099394:\n        cVar18 = 'F';\n        if (bVar14 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar14 == 8) {\n        cVar18 = 'B';\n      }\n      else if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }\n      puVar13 = pJVar15->aUp;\n      pJVar22 = (JsonParse *)((int)&pJVar20->nNode + 2);\n      *(char *)((int)&pJVar20->nNode + (int)&JStack_c8.nNode) = cVar18;\n      *(char *)((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1)) = (char)*piVar23 + '/';\n      puVar13[iVar11 * 2] = (int)pJVar22 >> 1;\n      *(undefined1 *)(pJVar15->aUp + iVar11 * 2 + 1) = 1;\n      uVar17 = pJVar15->nNode;\n      pJVar20 = pJVar22;\n      if ((int)uVar17 <= iVar11 + 1) {\nLAB_00099470:\n        pApnd = (sqlite3_value **)(iVar11 + 1);\n        pJVar15->oom = '\0';\n        pJVar15->nErr = '\0';\n        pJVar15->iDepth = 2;\n        pJVar15->iHold = 1;\n        pJVar20 = pJVar22;\n        if (pJVar22 == (JsonParse *)0x0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }" if (parenthesized_expression "(*(char *)((int)piVar23 + 5) == '\0')" ( (binary_expression "*(char *)((int)piVar23 + 5) == '\0'" (pointer_expression "*(char *)((int)piVar23 + 5)" * (cast_expression "(char *)((int)piVar23 + 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar23 + 5)" ( (binary_expression "(int)piVar23 + 5" (cast_expression "(int)piVar23" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_0009939c:\n      pJVar22 = pJVar20;\n      if ((int)uVar17 <= iVar11 + 1) goto LAB_00099470;\n    }" { (labeled_statement "LAB_0009939c:\n      pJVar22 = pJVar20;" statement_identifier : (expression_statement "pJVar22 = pJVar20;" (assignment_expression "pJVar22 = pJVar20" identifier = identifier) ;)) (if_statement "if ((int)uVar17 <= iVar11 + 1) goto LAB_00099470;" if (parenthesized_expression "((int)uVar17 <= iVar11 + 1)" ( (binary_expression "(int)uVar17 <= iVar11 + 1" (cast_expression "(int)uVar17" ( (type_descriptor "int" primitive_type) ) identifier) <= (binary_expression "iVar11 + 1" identifier + number_literal)) )) (goto_statement "goto LAB_00099470;" goto statement_identifier ;)) }) (else_clause "else {\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\nLAB_000993d8:\n      if ((iVar4 < 1) || ((int)(uint)pJVar2->nErr < iVar4)) {\nLAB_00099394:\n        cVar18 = 'F';\n        if (bVar14 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar14 == 8) {\n        cVar18 = 'B';\n      }\n      else if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }\n      puVar13 = pJVar15->aUp;\n      pJVar22 = (JsonParse *)((int)&pJVar20->nNode + 2);\n      *(char *)((int)&pJVar20->nNode + (int)&JStack_c8.nNode) = cVar18;\n      *(char *)((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1)) = (char)*piVar23 + '/';\n      puVar13[iVar11 * 2] = (int)pJVar22 >> 1;\n      *(undefined1 *)(pJVar15->aUp + iVar11 * 2 + 1) = 1;\n      uVar17 = pJVar15->nNode;\n      pJVar20 = pJVar22;\n      if ((int)uVar17 <= iVar11 + 1) {\nLAB_00099470:\n        pApnd = (sqlite3_value **)(iVar11 + 1);\n        pJVar15->oom = '\0';\n        pJVar15->nErr = '\0';\n        pJVar15->iDepth = 2;\n        pJVar15->iHold = 1;\n        pJVar20 = pJVar22;\n        if (pJVar22 == (JsonParse *)0x0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }" else (compound_statement "{\n      iVar4 = *piVar23;\n      bVar14 = *(byte *)(piVar23 + 1);\nLAB_000993d8:\n      if ((iVar4 < 1) || ((int)(uint)pJVar2->nErr < iVar4)) {\nLAB_00099394:\n        cVar18 = 'F';\n        if (bVar14 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar14 == 8) {\n        cVar18 = 'B';\n      }\n      else if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }\n      puVar13 = pJVar15->aUp;\n      pJVar22 = (JsonParse *)((int)&pJVar20->nNode + 2);\n      *(char *)((int)&pJVar20->nNode + (int)&JStack_c8.nNode) = cVar18;\n      *(char *)((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1)) = (char)*piVar23 + '/';\n      puVar13[iVar11 * 2] = (int)pJVar22 >> 1;\n      *(undefined1 *)(pJVar15->aUp + iVar11 * 2 + 1) = 1;\n      uVar17 = pJVar15->nNode;\n      pJVar20 = pJVar22;\n      if ((int)uVar17 <= iVar11 + 1) {\nLAB_00099470:\n        pApnd = (sqlite3_value **)(iVar11 + 1);\n        pJVar15->oom = '\0';\n        pJVar15->nErr = '\0';\n        pJVar15->iDepth = 2;\n        pJVar15->iHold = 1;\n        pJVar20 = pJVar22;\n        if (pJVar22 == (JsonParse *)0x0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }" { (expression_statement "iVar4 = *piVar23;" (assignment_expression "iVar4 = *piVar23" identifier = (pointer_expression "*piVar23" * identifier)) ;) (expression_statement "bVar14 = *(byte *)(piVar23 + 1);" (assignment_expression "bVar14 = *(byte *)(piVar23 + 1)" identifier = (pointer_expression "*(byte *)(piVar23 + 1)" * (cast_expression "(byte *)(piVar23 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar23 + 1)" ( (binary_expression "piVar23 + 1" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000993d8:\n      if ((iVar4 < 1) || ((int)(uint)pJVar2->nErr < iVar4)) {\nLAB_00099394:\n        cVar18 = 'F';\n        if (bVar14 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar14 == 8) {\n        cVar18 = 'B';\n      }\n      else if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }" statement_identifier : (if_statement "if ((iVar4 < 1) || ((int)(uint)pJVar2->nErr < iVar4)) {\nLAB_00099394:\n        cVar18 = 'F';\n        if (bVar14 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar14 == 8) {\n        cVar18 = 'B';\n      }\n      else if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }" if (parenthesized_expression "((iVar4 < 1) || ((int)(uint)pJVar2->nErr < iVar4))" ( (binary_expression "(iVar4 < 1) || ((int)(uint)pJVar2->nErr < iVar4)" (parenthesized_expression "(iVar4 < 1)" ( (binary_expression "iVar4 < 1" identifier < number_literal) )) || (parenthesized_expression "((int)(uint)pJVar2->nErr < iVar4)" ( (binary_expression "(int)(uint)pJVar2->nErr < iVar4" (cast_expression "(int)(uint)pJVar2->nErr" ( (type_descriptor "int" primitive_type) ) (cast_expression "(uint)pJVar2->nErr" ( (type_descriptor "uint" type_identifier) ) (field_expression "pJVar2->nErr" identifier -> field_identifier))) < identifier) ))) )) (compound_statement "{\nLAB_00099394:\n        cVar18 = 'F';\n        if (bVar14 != 0x40) goto LAB_0009939c;\n      }" { (labeled_statement "LAB_00099394:\n        cVar18 = 'F';" statement_identifier : (expression_statement "cVar18 = 'F';" (assignment_expression "cVar18 = 'F'" identifier = (char_literal "'F'" ' character ')) ;)) (if_statement "if (bVar14 != 0x40) goto LAB_0009939c;" if (parenthesized_expression "(bVar14 != 0x40)" ( (binary_expression "bVar14 != 0x40" identifier != number_literal) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) }) (else_clause "else if (bVar14 == 8) {\n        cVar18 = 'B';\n      }\n      else if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }" else (if_statement "if (bVar14 == 8) {\n        cVar18 = 'B';\n      }\n      else if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }" if (parenthesized_expression "(bVar14 == 8)" ( (binary_expression "bVar14 == 8" identifier == number_literal) )) (compound_statement "{\n        cVar18 = 'B';\n      }" { (expression_statement "cVar18 = 'B';" (assignment_expression "cVar18 = 'B'" identifier = (char_literal "'B'" ' character ')) ;) }) (else_clause "else if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }" else (if_statement "if (bVar14 < 9) {\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }\n      else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }" if (parenthesized_expression "(bVar14 < 9)" ( (binary_expression "bVar14 < 9" identifier < number_literal) )) (compound_statement "{\n        cVar18 = 'A';\n        if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;\n      }" { (expression_statement "cVar18 = 'A';" (assignment_expression "cVar18 = 'A'" identifier = (char_literal "'A'" ' character ')) ;) (if_statement "if ((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)) goto LAB_0009939c;" if (parenthesized_expression "((bVar14 != 2) && (cVar18 = 'E', bVar14 != 4))" ( (binary_expression "(bVar14 != 2) && (cVar18 = 'E', bVar14 != 4)" (parenthesized_expression "(bVar14 != 2)" ( (binary_expression "bVar14 != 2" identifier != number_literal) )) && (parenthesized_expression "(cVar18 = 'E', bVar14 != 4)" ( (comma_expression "cVar18 = 'E', bVar14 != 4" (assignment_expression "cVar18 = 'E'" identifier = (char_literal "'E'" ' character ')) , (binary_expression "bVar14 != 4" identifier != number_literal)) ))) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) }) (else_clause "else {\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }" else (compound_statement "{\n        cVar18 = 'D';\n        if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;\n      }" { (expression_statement "cVar18 = 'D';" (assignment_expression "cVar18 = 'D'" identifier = (char_literal "'D'" ' character ')) ;) (if_statement "if ((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))\n        goto LAB_0009939c;" if (parenthesized_expression "((bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))))" ( (binary_expression "(bVar14 != 0x20) && ((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10)))" (parenthesized_expression "(bVar14 != 0x20)" ( (binary_expression "bVar14 != 0x20" identifier != number_literal) )) && (parenthesized_expression "((cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10)))" ( (parenthesized_expression "(cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10))" ( (comma_expression "cVar18 = 'F', bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10)" (assignment_expression "cVar18 = 'F'" identifier = (char_literal "'F'" ' character ')) , (binary_expression "bVar14 != 0x40 && (cVar18 = 'C', bVar14 != 0x10)" (binary_expression "bVar14 != 0x40" identifier != number_literal) && (parenthesized_expression "(cVar18 = 'C', bVar14 != 0x10)" ( (comma_expression "cVar18 = 'C', bVar14 != 0x10" (assignment_expression "cVar18 = 'C'" identifier = (char_literal "'C'" ' character ')) , (binary_expression "bVar14 != 0x10" identifier != number_literal)) )))) )) ))) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) })))))))) (expression_statement "puVar13 = pJVar15->aUp;" (assignment_expression "puVar13 = pJVar15->aUp" identifier = (field_expression "pJVar15->aUp" identifier -> field_identifier)) ;) (expression_statement "pJVar22 = (JsonParse *)((int)&pJVar20->nNode + 2);" (assignment_expression "pJVar22 = (JsonParse *)((int)&pJVar20->nNode + 2)" identifier = (cast_expression "(JsonParse *)((int)&pJVar20->nNode + 2)" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pJVar20->nNode + 2)" ( (binary_expression "(int)&pJVar20->nNode + 2" (cast_expression "(int)&pJVar20->nNode" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pJVar20->nNode" & (field_expression "pJVar20->nNode" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "*(char *)((int)&pJVar20->nNode + (int)&JStack_c8.nNode) = cVar18;" (assignment_expression "*(char *)((int)&pJVar20->nNode + (int)&JStack_c8.nNode) = cVar18" (pointer_expression "*(char *)((int)&pJVar20->nNode + (int)&JStack_c8.nNode)" * (cast_expression "(char *)((int)&pJVar20->nNode + (int)&JStack_c8.nNode)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pJVar20->nNode + (int)&JStack_c8.nNode)" ( (binary_expression "(int)&pJVar20->nNode + (int)&JStack_c8.nNode" (cast_expression "(int)&pJVar20->nNode" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pJVar20->nNode" & (field_expression "pJVar20->nNode" identifier -> field_identifier))) + (cast_expression "(int)&JStack_c8.nNode" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&JStack_c8.nNode" & (field_expression "JStack_c8.nNode" identifier . field_identifier)))) )))) = identifier) ;) (expression_statement "*(char *)((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1)) = (char)*piVar23 + '/';" (assignment_expression "*(char *)((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1)) = (char)*piVar23 + '/'" (pointer_expression "*(char *)((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1))" * (cast_expression "(char *)((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1))" ( (binary_expression "(int)&pJVar20->nNode + (int)((int)&JStack_c8.nNode + 1)" (cast_expression "(int)&pJVar20->nNode" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pJVar20->nNode" & (field_expression "pJVar20->nNode" identifier -> field_identifier))) + (cast_expression "(int)((int)&JStack_c8.nNode + 1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((int)&JStack_c8.nNode + 1)" ( (binary_expression "(int)&JStack_c8.nNode + 1" (cast_expression "(int)&JStack_c8.nNode" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&JStack_c8.nNode" & (field_expression "JStack_c8.nNode" identifier . field_identifier))) + number_literal) )))) )))) = (binary_expression "(char)*piVar23 + '/'" (cast_expression "(char)*piVar23" ( (type_descriptor "char" primitive_type) ) (pointer_expression "*piVar23" * identifier)) + (char_literal "'/'" ' character '))) ;) (expression_statement "puVar13[iVar11 * 2] = (int)pJVar22 >> 1;" (assignment_expression "puVar13[iVar11 * 2] = (int)pJVar22 >> 1" (subscript_expression "puVar13[iVar11 * 2]" identifier [ (binary_expression "iVar11 * 2" identifier * number_literal) ]) = (binary_expression "(int)pJVar22 >> 1" (cast_expression "(int)pJVar22" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (expression_statement "*(undefined1 *)(pJVar15->aUp + iVar11 * 2 + 1) = 1;" (assignment_expression "*(undefined1 *)(pJVar15->aUp + iVar11 * 2 + 1) = 1" (pointer_expression "*(undefined1 *)(pJVar15->aUp + iVar11 * 2 + 1)" * (cast_expression "(undefined1 *)(pJVar15->aUp + iVar11 * 2 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pJVar15->aUp + iVar11 * 2 + 1)" ( (binary_expression "pJVar15->aUp + iVar11 * 2 + 1" (binary_expression "pJVar15->aUp + iVar11 * 2" (field_expression "pJVar15->aUp" identifier -> field_identifier) + (binary_expression "iVar11 * 2" identifier * number_literal)) + number_literal) )))) = number_literal) ;) (expression_statement "uVar17 = pJVar15->nNode;" (assignment_expression "uVar17 = pJVar15->nNode" identifier = (field_expression "pJVar15->nNode" identifier -> field_identifier)) ;) (expression_statement "pJVar20 = pJVar22;" (assignment_expression "pJVar20 = pJVar22" identifier = identifier) ;) (if_statement "if ((int)uVar17 <= iVar11 + 1) {\nLAB_00099470:\n        pApnd = (sqlite3_value **)(iVar11 + 1);\n        pJVar15->oom = '\0';\n        pJVar15->nErr = '\0';\n        pJVar15->iDepth = 2;\n        pJVar15->iHold = 1;\n        pJVar20 = pJVar22;\n        if (pJVar22 == (JsonParse *)0x0) goto LAB_00099480;\n        goto LAB_00099544;\n      }" if (parenthesized_expression "((int)uVar17 <= iVar11 + 1)" ( (binary_expression "(int)uVar17 <= iVar11 + 1" (cast_expression "(int)uVar17" ( (type_descriptor "int" primitive_type) ) identifier) <= (binary_expression "iVar11 + 1" identifier + number_literal)) )) (compound_statement "{\nLAB_00099470:\n        pApnd = (sqlite3_value **)(iVar11 + 1);\n        pJVar15->oom = '\0';\n        pJVar15->nErr = '\0';\n        pJVar15->iDepth = 2;\n        pJVar15->iHold = 1;\n        pJVar20 = pJVar22;\n        if (pJVar22 == (JsonParse *)0x0) goto LAB_00099480;\n        goto LAB_00099544;\n      }" { (labeled_statement "LAB_00099470:\n        pApnd = (sqlite3_value **)(iVar11 + 1);" statement_identifier : (expression_statement "pApnd = (sqlite3_value **)(iVar11 + 1);" (assignment_expression "pApnd = (sqlite3_value **)(iVar11 + 1)" identifier = (cast_expression "(sqlite3_value **)(iVar11 + 1)" ( (type_descriptor "sqlite3_value **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar11 + 1)" ( (binary_expression "iVar11 + 1" identifier + number_literal) )))) ;)) (expression_statement "pJVar15->oom = '\0';" (assignment_expression "pJVar15->oom = '\0'" (field_expression "pJVar15->oom" identifier -> field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pJVar15->nErr = '\0';" (assignment_expression "pJVar15->nErr = '\0'" (field_expression "pJVar15->nErr" identifier -> field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pJVar15->iDepth = 2;" (assignment_expression "pJVar15->iDepth = 2" (field_expression "pJVar15->iDepth" identifier -> field_identifier) = number_literal) ;) (expression_statement "pJVar15->iHold = 1;" (assignment_expression "pJVar15->iHold = 1" (field_expression "pJVar15->iHold" identifier -> field_identifier) = number_literal) ;) (expression_statement "pJVar20 = pJVar22;" (assignment_expression "pJVar20 = pJVar22" identifier = identifier) ;) (if_statement "if (pJVar22 == (JsonParse *)0x0) goto LAB_00099480;" if (parenthesized_expression "(pJVar22 == (JsonParse *)0x0)" ( (binary_expression "pJVar22 == (JsonParse *)0x0" identifier == (cast_expression "(JsonParse *)0x0" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00099480;" goto statement_identifier ;)) (goto_statement "goto LAB_00099544;" goto statement_identifier ;) })) }))) (expression_statement "in_a3 = in_a3 + 3;" (assignment_expression "in_a3 = in_a3 + 3" identifier = (binary_expression "in_a3 + 3" identifier + number_literal)) ;) (if_statement "if ((int)pJVar20 < 0x28) goto code_r0x000993b8;" if (parenthesized_expression "((int)pJVar20 < 0x28)" ( (binary_expression "(int)pJVar20 < 0x28" (cast_expression "(int)pJVar20" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto code_r0x000993b8;" goto statement_identifier ;)) (expression_statement "pJVar15->oom = '\0';" (assignment_expression "pJVar15->oom = '\0'" (field_expression "pJVar15->oom" identifier -> field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pJVar15->nErr = '\0';" (assignment_expression "pJVar15->nErr = '\0'" (field_expression "pJVar15->nErr" identifier -> field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pJVar15->iDepth = 2;" (assignment_expression "pJVar15->iDepth = 2" (field_expression "pJVar15->iDepth" identifier -> field_identifier) = number_literal) ;) (expression_statement "pJVar15->iHold = 1;" (assignment_expression "pJVar15->iHold = 1" (field_expression "pJVar15->iHold" identifier -> field_identifier) = number_literal) ;) (labeled_statement "LAB_00099544:\n    pApnd = (sqlite3_value **)(iVar11 + 1);" statement_identifier : (expression_statement "pApnd = (sqlite3_value **)(iVar11 + 1);" (assignment_expression "pApnd = (sqlite3_value **)(iVar11 + 1)" identifier = (cast_expression "(sqlite3_value **)(iVar11 + 1)" ( (type_descriptor "sqlite3_value **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar11 + 1)" ( (binary_expression "iVar11 + 1" identifier + number_literal) )))) ;)) (expression_statement "pcVar10 = sqlite3_mprintf((char *)(*(int *)(pcVar26 + 0xc2348) + 0x71f4));" (assignment_expression "pcVar10 = sqlite3_mprintf((char *)(*(int *)(pcVar26 + 0xc2348) + 0x71f4))" identifier = (call_expression "sqlite3_mprintf((char *)(*(int *)(pcVar26 + 0xc2348) + 0x71f4))" identifier (argument_list "((char *)(*(int *)(pcVar26 + 0xc2348) + 0x71f4))" ( (cast_expression "(char *)(*(int *)(pcVar26 + 0xc2348) + 0x71f4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar26 + 0xc2348) + 0x71f4)" ( (binary_expression "*(int *)(pcVar26 + 0xc2348) + 0x71f4" (pointer_expression "*(int *)(pcVar26 + 0xc2348)" * (cast_expression "(int *)(pcVar26 + 0xc2348)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar26 + 0xc2348)" ( (binary_expression "pcVar26 + 0xc2348" identifier + number_literal) )))) + number_literal) ))) )))) ;) (expression_statement "pJVar15->nJson = (int)pcVar10;" (assignment_expression "pJVar15->nJson = (int)pcVar10" (field_expression "pJVar15->nJson" identifier -> field_identifier) = (cast_expression "(int)pcVar10" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (pcVar10 != (char *)0x0) {\n      pJVar22 = (JsonParse *)((int)pJVar20 >> 1);\n      goto LAB_00099480;\n    }" if (parenthesized_expression "(pcVar10 != (char *)0x0)" ( (binary_expression "pcVar10 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pJVar22 = (JsonParse *)((int)pJVar20 >> 1);\n      goto LAB_00099480;\n    }" { (expression_statement "pJVar22 = (JsonParse *)((int)pJVar20 >> 1);" (assignment_expression "pJVar22 = (JsonParse *)((int)pJVar20 >> 1)" identifier = (cast_expression "(JsonParse *)((int)pJVar20 >> 1)" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pJVar20 >> 1)" ( (binary_expression "(int)pJVar20 >> 1" (cast_expression "(int)pJVar20" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )))) ;) (goto_statement "goto LAB_00099480;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_000994e0:\n  if (iStack_9c == *piVar19) {\n    return;\n  }" statement_identifier : (if_statement "if (iStack_9c == *piVar19) {\n    return;\n  }" if (parenthesized_expression "(iStack_9c == *piVar19)" ( (binary_expression "iStack_9c == *piVar19" identifier == (pointer_expression "*piVar19" * identifier)) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) }))) (expression_statement "pcVar26 = *(code **)(pcStack_d0 + -0x7ba0);" (assignment_expression "pcVar26 = *(code **)(pcStack_d0 + -0x7ba0)" identifier = (pointer_expression "*(code **)(pcStack_d0 + -0x7ba0)" * (cast_expression "(code **)(pcStack_d0 + -0x7ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_d0 + -0x7ba0)" ( (binary_expression "pcStack_d0 + -0x7ba0" identifier + number_literal) ))))) ;) (expression_statement "pcVar27 = rtreeCheckAppendMsg;" (assignment_expression "pcVar27 = rtreeCheckAppendMsg" identifier = identifier) ;) (expression_statement "iVar11 = iStack_9c;" (assignment_expression "iVar11 = iStack_9c" identifier = identifier) ;) (expression_statement "(*pcVar26)();" (call_expression "(*pcVar26)()" (parenthesized_expression "(*pcVar26)" ( (pointer_expression "*pcVar26" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_100 = pcVar26 + 0xc9f94;" (assignment_expression "pcStack_100 = pcVar26 + 0xc9f94" identifier = (binary_expression "pcVar26 + 0xc9f94" identifier + number_literal)) ;) (expression_statement "pppsVar8 = &ppsStack_d8;" (assignment_expression "pppsVar8 = &ppsStack_d8" identifier = (pointer_expression "&ppsStack_d8" & identifier)) ;) (expression_statement "puVar24 = *(undefined4 **)(pcVar26 + 0xc2410);" (assignment_expression "puVar24 = *(undefined4 **)(pcVar26 + 0xc2410)" identifier = (pointer_expression "*(undefined4 **)(pcVar26 + 0xc2410)" * (cast_expression "(undefined4 **)(pcVar26 + 0xc2410)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar26 + 0xc2410)" ( (binary_expression "pcVar26 + 0xc2410" identifier + number_literal) ))))) ;) (expression_statement "pppsStack_f4 = (sqlite3_value ***)*puVar24;" (assignment_expression "pppsStack_f4 = (sqlite3_value ***)*puVar24" identifier = (cast_expression "(sqlite3_value ***)*puVar24" ( (type_descriptor "sqlite3_value ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "*puVar24" * identifier))) ;) (expression_statement "pppsVar16 = pppsStack_f4;" (assignment_expression "pppsVar16 = pppsStack_f4" identifier = identifier) ;) (expression_statement "pppsStack_f8 = pppsVar8;" (assignment_expression "pppsStack_f8 = pppsVar8" identifier = identifier) ;) (expression_statement "pJStack_ec = pJVar20;" (assignment_expression "pJStack_ec = pJVar20" identifier = identifier) ;) (expression_statement "pJStack_e8 = pJVar15;" (assignment_expression "pJStack_e8 = pJVar15" identifier = identifier) ;) (expression_statement "pcStack_e4 = pcVar27;" (assignment_expression "pcStack_e4 = pcVar27" identifier = identifier) ;) (expression_statement "ppsStack_d8 = pApnd;" (assignment_expression "ppsStack_d8 = pApnd" identifier = identifier) ;) (expression_statement "puStack_d4 = in_a3;" (assignment_expression "puStack_d4 = in_a3" identifier = identifier) ;) (if_statement "if ((*(int *)(iVar11 + 0x28) == 0) && (*(int *)(iVar11 + 0x30) < 100)) {\n    puVar13 = (u32 *)sqlite3_vmprintf((char *)pJVar21,pppsVar8);\n    if (puVar13 == (u32 *)0x0) {\nLAB_000996f0:\n      *(undefined4 *)(iVar11 + 0x28) = 7;\n    }\n    else {\n      pppsVar8 = *(sqlite3_value ****)(iVar11 + 0x2c);\n      if (pppsVar8 == (sqlite3_value ***)0x0) {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4);\n      }\n      else {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48);\n      }\n      pJVar21 = (JsonParse *)(*(int *)(pcStack_100 + -0x7fb4) + -0x741c);\n      pcVar10 = sqlite3_mprintf((char *)pJVar21);\n      *(char **)(iVar11 + 0x2c) = pcVar10;\n      in_a3 = puVar13;\n      if (pcVar10 == (char *)0x0) goto LAB_000996f0;\n    }\n    *(int *)(iVar11 + 0x30) = *(int *)(iVar11 + 0x30) + 1;\n    pppsVar16 = pppsVar8;\n  }" if (parenthesized_expression "((*(int *)(iVar11 + 0x28) == 0) && (*(int *)(iVar11 + 0x30) < 100))" ( (binary_expression "(*(int *)(iVar11 + 0x28) == 0) && (*(int *)(iVar11 + 0x30) < 100)" (parenthesized_expression "(*(int *)(iVar11 + 0x28) == 0)" ( (binary_expression "*(int *)(iVar11 + 0x28) == 0" (pointer_expression "*(int *)(iVar11 + 0x28)" * (cast_expression "(int *)(iVar11 + 0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x28)" ( (binary_expression "iVar11 + 0x28" identifier + number_literal) )))) == number_literal) )) && (parenthesized_expression "(*(int *)(iVar11 + 0x30) < 100)" ( (binary_expression "*(int *)(iVar11 + 0x30) < 100" (pointer_expression "*(int *)(iVar11 + 0x30)" * (cast_expression "(int *)(iVar11 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x30)" ( (binary_expression "iVar11 + 0x30" identifier + number_literal) )))) < number_literal) ))) )) (compound_statement "{\n    puVar13 = (u32 *)sqlite3_vmprintf((char *)pJVar21,pppsVar8);\n    if (puVar13 == (u32 *)0x0) {\nLAB_000996f0:\n      *(undefined4 *)(iVar11 + 0x28) = 7;\n    }\n    else {\n      pppsVar8 = *(sqlite3_value ****)(iVar11 + 0x2c);\n      if (pppsVar8 == (sqlite3_value ***)0x0) {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4);\n      }\n      else {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48);\n      }\n      pJVar21 = (JsonParse *)(*(int *)(pcStack_100 + -0x7fb4) + -0x741c);\n      pcVar10 = sqlite3_mprintf((char *)pJVar21);\n      *(char **)(iVar11 + 0x2c) = pcVar10;\n      in_a3 = puVar13;\n      if (pcVar10 == (char *)0x0) goto LAB_000996f0;\n    }\n    *(int *)(iVar11 + 0x30) = *(int *)(iVar11 + 0x30) + 1;\n    pppsVar16 = pppsVar8;\n  }" { (expression_statement "puVar13 = (u32 *)sqlite3_vmprintf((char *)pJVar21,pppsVar8);" (assignment_expression "puVar13 = (u32 *)sqlite3_vmprintf((char *)pJVar21,pppsVar8)" identifier = (cast_expression "(u32 *)sqlite3_vmprintf((char *)pJVar21,pppsVar8)" ( (type_descriptor "u32 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "sqlite3_vmprintf((char *)pJVar21,pppsVar8)" identifier (argument_list "((char *)pJVar21,pppsVar8)" ( (cast_expression "(char *)pJVar21" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier ))))) ;) (if_statement "if (puVar13 == (u32 *)0x0) {\nLAB_000996f0:\n      *(undefined4 *)(iVar11 + 0x28) = 7;\n    }\n    else {\n      pppsVar8 = *(sqlite3_value ****)(iVar11 + 0x2c);\n      if (pppsVar8 == (sqlite3_value ***)0x0) {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4);\n      }\n      else {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48);\n      }\n      pJVar21 = (JsonParse *)(*(int *)(pcStack_100 + -0x7fb4) + -0x741c);\n      pcVar10 = sqlite3_mprintf((char *)pJVar21);\n      *(char **)(iVar11 + 0x2c) = pcVar10;\n      in_a3 = puVar13;\n      if (pcVar10 == (char *)0x0) goto LAB_000996f0;\n    }" if (parenthesized_expression "(puVar13 == (u32 *)0x0)" ( (binary_expression "puVar13 == (u32 *)0x0" identifier == (cast_expression "(u32 *)0x0" ( (type_descriptor "u32 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000996f0:\n      *(undefined4 *)(iVar11 + 0x28) = 7;\n    }" { (labeled_statement "LAB_000996f0:\n      *(undefined4 *)(iVar11 + 0x28) = 7;" statement_identifier : (expression_statement "*(undefined4 *)(iVar11 + 0x28) = 7;" (assignment_expression "*(undefined4 *)(iVar11 + 0x28) = 7" (pointer_expression "*(undefined4 *)(iVar11 + 0x28)" * (cast_expression "(undefined4 *)(iVar11 + 0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x28)" ( (binary_expression "iVar11 + 0x28" identifier + number_literal) )))) = number_literal) ;)) }) (else_clause "else {\n      pppsVar8 = *(sqlite3_value ****)(iVar11 + 0x2c);\n      if (pppsVar8 == (sqlite3_value ***)0x0) {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4);\n      }\n      else {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48);\n      }\n      pJVar21 = (JsonParse *)(*(int *)(pcStack_100 + -0x7fb4) + -0x741c);\n      pcVar10 = sqlite3_mprintf((char *)pJVar21);\n      *(char **)(iVar11 + 0x2c) = pcVar10;\n      in_a3 = puVar13;\n      if (pcVar10 == (char *)0x0) goto LAB_000996f0;\n    }" else (compound_statement "{\n      pppsVar8 = *(sqlite3_value ****)(iVar11 + 0x2c);\n      if (pppsVar8 == (sqlite3_value ***)0x0) {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4);\n      }\n      else {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48);\n      }\n      pJVar21 = (JsonParse *)(*(int *)(pcStack_100 + -0x7fb4) + -0x741c);\n      pcVar10 = sqlite3_mprintf((char *)pJVar21);\n      *(char **)(iVar11 + 0x2c) = pcVar10;\n      in_a3 = puVar13;\n      if (pcVar10 == (char *)0x0) goto LAB_000996f0;\n    }" { (expression_statement "pppsVar8 = *(sqlite3_value ****)(iVar11 + 0x2c);" (assignment_expression "pppsVar8 = *(sqlite3_value ****)(iVar11 + 0x2c)" identifier = (pointer_expression "*(sqlite3_value ****)(iVar11 + 0x2c)" * (cast_expression "(sqlite3_value ****)(iVar11 + 0x2c)" ( (type_descriptor "sqlite3_value ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(iVar11 + 0x2c)" ( (binary_expression "iVar11 + 0x2c" identifier + number_literal) ))))) ;) (if_statement "if (pppsVar8 == (sqlite3_value ***)0x0) {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4);\n      }\n      else {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48);\n      }" if (parenthesized_expression "(pppsVar8 == (sqlite3_value ***)0x0)" ( (binary_expression "pppsVar8 == (sqlite3_value ***)0x0" identifier == (cast_expression "(sqlite3_value ***)0x0" ( (type_descriptor "sqlite3_value ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) )) (compound_statement "{\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4);\n      }" { (expression_statement "pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4);" (assignment_expression "pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4)" identifier = (cast_expression "(sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4)" ( (type_descriptor "sqlite3_value **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pcStack_100 + -0x7fc8) + 0x53f4)" ( (binary_expression "*(int *)(pcStack_100 + -0x7fc8) + 0x53f4" (pointer_expression "*(int *)(pcStack_100 + -0x7fc8)" * (cast_expression "(int *)(pcStack_100 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x7fc8)" ( (binary_expression "pcStack_100 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) }) (else_clause "else {\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48);\n      }" else (compound_statement "{\n        pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48);\n      }" { (expression_statement "pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48);" (assignment_expression "pApnd = (sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48)" identifier = (cast_expression "(sqlite3_value **)(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48)" ( (type_descriptor "sqlite3_value **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pcStack_100 + -0x7fc8) + 0x5c48)" ( (binary_expression "*(int *)(pcStack_100 + -0x7fc8) + 0x5c48" (pointer_expression "*(int *)(pcStack_100 + -0x7fc8)" * (cast_expression "(int *)(pcStack_100 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x7fc8)" ( (binary_expression "pcStack_100 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) }))) (expression_statement "pJVar21 = (JsonParse *)(*(int *)(pcStack_100 + -0x7fb4) + -0x741c);" (assignment_expression "pJVar21 = (JsonParse *)(*(int *)(pcStack_100 + -0x7fb4) + -0x741c)" identifier = (cast_expression "(JsonParse *)(*(int *)(pcStack_100 + -0x7fb4) + -0x741c)" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_100 + -0x7fb4) + -0x741c)" ( (binary_expression "*(int *)(pcStack_100 + -0x7fb4) + -0x741c" (pointer_expression "*(int *)(pcStack_100 + -0x7fb4)" * (cast_expression "(int *)(pcStack_100 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_100 + -0x7fb4)" ( (binary_expression "pcStack_100 + -0x7fb4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar10 = sqlite3_mprintf((char *)pJVar21);" (assignment_expression "pcVar10 = sqlite3_mprintf((char *)pJVar21)" identifier = (call_expression "sqlite3_mprintf((char *)pJVar21)" identifier (argument_list "((char *)pJVar21)" ( (cast_expression "(char *)pJVar21" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "*(char **)(iVar11 + 0x2c) = pcVar10;" (assignment_expression "*(char **)(iVar11 + 0x2c) = pcVar10" (pointer_expression "*(char **)(iVar11 + 0x2c)" * (cast_expression "(char **)(iVar11 + 0x2c)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar11 + 0x2c)" ( (binary_expression "iVar11 + 0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "in_a3 = puVar13;" (assignment_expression "in_a3 = puVar13" identifier = identifier) ;) (if_statement "if (pcVar10 == (char *)0x0) goto LAB_000996f0;" if (parenthesized_expression "(pcVar10 == (char *)0x0)" ( (binary_expression "pcVar10 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000996f0;" goto statement_identifier ;)) }))) (expression_statement "*(int *)(iVar11 + 0x30) = *(int *)(iVar11 + 0x30) + 1;" (assignment_expression "*(int *)(iVar11 + 0x30) = *(int *)(iVar11 + 0x30) + 1" (pointer_expression "*(int *)(iVar11 + 0x30)" * (cast_expression "(int *)(iVar11 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x30)" ( (binary_expression "iVar11 + 0x30" identifier + number_literal) )))) = (binary_expression "*(int *)(iVar11 + 0x30) + 1" (pointer_expression "*(int *)(iVar11 + 0x30)" * (cast_expression "(int *)(iVar11 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x30)" ( (binary_expression "iVar11 + 0x30" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "pppsVar16 = pppsVar8;" (assignment_expression "pppsVar16 = pppsVar8" identifier = identifier) ;) })) (if_statement "if (pppsStack_f4 == (sqlite3_value ***)*puVar24) {\n    return;\n  }" if (parenthesized_expression "(pppsStack_f4 == (sqlite3_value ***)*puVar24)" ( (binary_expression "pppsStack_f4 == (sqlite3_value ***)*puVar24" identifier == (cast_expression "(sqlite3_value ***)*puVar24" ( (type_descriptor "sqlite3_value ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "*puVar24" * identifier))) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "pcVar26 = *(code **)(pcStack_100 + -0x7ba0);" (assignment_expression "pcVar26 = *(code **)(pcStack_100 + -0x7ba0)" identifier = (pointer_expression "*(code **)(pcStack_100 + -0x7ba0)" * (cast_expression "(code **)(pcStack_100 + -0x7ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_100 + -0x7ba0)" ( (binary_expression "pcStack_100 + -0x7ba0" identifier + number_literal) ))))) ;) (expression_statement "pcVar27 = jsonLookup;" (assignment_expression "pcVar27 = jsonLookup" identifier = identifier) ;) (expression_statement "(*pcVar26)();" (call_expression "(*pcVar26)()" (parenthesized_expression "(*pcVar26)" ( (pointer_expression "*pcVar26" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "piVar19 = *(int **)(pcVar26 + 0xc231c);" (assignment_expression "piVar19 = *(int **)(pcVar26 + 0xc231c)" identifier = (pointer_expression "*(int **)(pcVar26 + 0xc231c)" * (cast_expression "(int **)(pcVar26 + 0xc231c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar26 + 0xc231c)" ( (binary_expression "pcVar26 + 0xc231c" identifier + number_literal) ))))) ;) (expression_statement "pppsStack_128 = (sqlite3_value ***)0x0;" (assignment_expression "pppsStack_128 = (sqlite3_value ***)0x0" identifier = (cast_expression "(sqlite3_value ***)0x0" ( (type_descriptor "sqlite3_value ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (expression_statement "psStack_124 = (sqlite3_context *)*piVar19;" (assignment_expression "psStack_124 = (sqlite3_context *)*piVar19" identifier = (cast_expression "(sqlite3_context *)*piVar19" ( (type_descriptor "sqlite3_context *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar19" * identifier))) ;) (expression_statement "argv = pApnd;" (assignment_expression "argv = pApnd" identifier = identifier) ;) (expression_statement "iStack_120 = iVar11;" (assignment_expression "iStack_120 = iVar11" identifier = identifier) ;) (expression_statement "puStack_11c = puVar24;" (assignment_expression "puStack_11c = puVar24" identifier = identifier) ;) (expression_statement "pJStack_118 = pJVar2;" (assignment_expression "pJStack_118 = pJVar2" identifier = identifier) ;) (expression_statement "pcStack_114 = pcVar27;" (assignment_expression "pcStack_114 = pcVar27" identifier = identifier) ;) (if_statement "if (pppsVar16 != (sqlite3_value ***)0x0) {\n    if (*(char *)pppsVar16 == '$') {\n      argv = (sqlite3_value **)((int)pppsVar16 + 1);\n      jsonLookupStep(pJVar21,0,(char *)argv,(int *)pApnd,(char **)&pppsStack_128);\n      pppsVar16 = pppsStack_128;\n      if (pppsStack_128 == (sqlite3_value ***)0x0) goto LAB_000997bc;\n    }\n    pppsStack_128 = pppsVar16;\n    iVar11 = *(int *)(pcVar26 + 0xc1eec);\n    pJVar21->nErr = pJVar21->nErr + '\x01';\n    pppsVar16 = pppsStack_128;\n    pppsVar8 = (sqlite3_value ***)sqlite3_mprintf((char *)(iVar11 + -0x7414));\n    if (pppsVar8 == (sqlite3_value ***)0x0) {\n      (**(code **)(pcVar26 + 0xc2074))(in_a3);\n    }\n    else {\n      argv = (sqlite3_value **)0xffffffff;\n      pppsVar16 = pppsVar8;\n      (**(code **)(pcVar26 + 0xc2060))(in_a3);\n      (**(code **)(pcVar26 + 0xc1f10))(pppsVar8);\n    }\n  }" if (parenthesized_expression "(pppsVar16 != (sqlite3_value ***)0x0)" ( (binary_expression "pppsVar16 != (sqlite3_value ***)0x0" identifier != (cast_expression "(sqlite3_value ***)0x0" ( (type_descriptor "sqlite3_value ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) )) (compound_statement "{\n    if (*(char *)pppsVar16 == '$') {\n      argv = (sqlite3_value **)((int)pppsVar16 + 1);\n      jsonLookupStep(pJVar21,0,(char *)argv,(int *)pApnd,(char **)&pppsStack_128);\n      pppsVar16 = pppsStack_128;\n      if (pppsStack_128 == (sqlite3_value ***)0x0) goto LAB_000997bc;\n    }\n    pppsStack_128 = pppsVar16;\n    iVar11 = *(int *)(pcVar26 + 0xc1eec);\n    pJVar21->nErr = pJVar21->nErr + '\x01';\n    pppsVar16 = pppsStack_128;\n    pppsVar8 = (sqlite3_value ***)sqlite3_mprintf((char *)(iVar11 + -0x7414));\n    if (pppsVar8 == (sqlite3_value ***)0x0) {\n      (**(code **)(pcVar26 + 0xc2074))(in_a3);\n    }\n    else {\n      argv = (sqlite3_value **)0xffffffff;\n      pppsVar16 = pppsVar8;\n      (**(code **)(pcVar26 + 0xc2060))(in_a3);\n      (**(code **)(pcVar26 + 0xc1f10))(pppsVar8);\n    }\n  }" { (if_statement "if (*(char *)pppsVar16 == '$') {\n      argv = (sqlite3_value **)((int)pppsVar16 + 1);\n      jsonLookupStep(pJVar21,0,(char *)argv,(int *)pApnd,(char **)&pppsStack_128);\n      pppsVar16 = pppsStack_128;\n      if (pppsStack_128 == (sqlite3_value ***)0x0) goto LAB_000997bc;\n    }" if (parenthesized_expression "(*(char *)pppsVar16 == '$')" ( (binary_expression "*(char *)pppsVar16 == '$'" (pointer_expression "*(char *)pppsVar16" * (cast_expression "(char *)pppsVar16" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'$'" ' character ')) )) (compound_statement "{\n      argv = (sqlite3_value **)((int)pppsVar16 + 1);\n      jsonLookupStep(pJVar21,0,(char *)argv,(int *)pApnd,(char **)&pppsStack_128);\n      pppsVar16 = pppsStack_128;\n      if (pppsStack_128 == (sqlite3_value ***)0x0) goto LAB_000997bc;\n    }" { (expression_statement "argv = (sqlite3_value **)((int)pppsVar16 + 1);" (assignment_expression "argv = (sqlite3_value **)((int)pppsVar16 + 1)" identifier = (cast_expression "(sqlite3_value **)((int)pppsVar16 + 1)" ( (type_descriptor "sqlite3_value **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)pppsVar16 + 1)" ( (binary_expression "(int)pppsVar16 + 1" (cast_expression "(int)pppsVar16" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "jsonLookupStep(pJVar21,0,(char *)argv,(int *)pApnd,(char **)&pppsStack_128);" (call_expression "jsonLookupStep(pJVar21,0,(char *)argv,(int *)pApnd,(char **)&pppsStack_128)" identifier (argument_list "(pJVar21,0,(char *)argv,(int *)pApnd,(char **)&pppsStack_128)" ( identifier , number_literal , (cast_expression "(char *)argv" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(int *)pApnd" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(char **)&pppsStack_128" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&pppsStack_128" & identifier)) ))) ;) (expression_statement "pppsVar16 = pppsStack_128;" (assignment_expression "pppsVar16 = pppsStack_128" identifier = identifier) ;) (if_statement "if (pppsStack_128 == (sqlite3_value ***)0x0) goto LAB_000997bc;" if (parenthesized_expression "(pppsStack_128 == (sqlite3_value ***)0x0)" ( (binary_expression "pppsStack_128 == (sqlite3_value ***)0x0" identifier == (cast_expression "(sqlite3_value ***)0x0" ( (type_descriptor "sqlite3_value ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) )) (goto_statement "goto LAB_000997bc;" goto statement_identifier ;)) })) (expression_statement "pppsStack_128 = pppsVar16;" (assignment_expression "pppsStack_128 = pppsVar16" identifier = identifier) ;) (expression_statement "iVar11 = *(int *)(pcVar26 + 0xc1eec);" (assignment_expression "iVar11 = *(int *)(pcVar26 + 0xc1eec)" identifier = (pointer_expression "*(int *)(pcVar26 + 0xc1eec)" * (cast_expression "(int *)(pcVar26 + 0xc1eec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar26 + 0xc1eec)" ( (binary_expression "pcVar26 + 0xc1eec" identifier + number_literal) ))))) ;) (expression_statement "pJVar21->nErr = pJVar21->nErr + '\x01';" (assignment_expression "pJVar21->nErr = pJVar21->nErr + '\x01'" (field_expression "pJVar21->nErr" identifier -> field_identifier) = (binary_expression "pJVar21->nErr + '\x01'" (field_expression "pJVar21->nErr" identifier -> field_identifier) + (char_literal "'\x01'" ' escape_sequence '))) ;) (expression_statement "pppsVar16 = pppsStack_128;" (assignment_expression "pppsVar16 = pppsStack_128" identifier = identifier) ;) (expression_statement "pppsVar8 = (sqlite3_value ***)sqlite3_mprintf((char *)(iVar11 + -0x7414));" (assignment_expression "pppsVar8 = (sqlite3_value ***)sqlite3_mprintf((char *)(iVar11 + -0x7414))" identifier = (cast_expression "(sqlite3_value ***)sqlite3_mprintf((char *)(iVar11 + -0x7414))" ( (type_descriptor "sqlite3_value ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (call_expression "sqlite3_mprintf((char *)(iVar11 + -0x7414))" identifier (argument_list "((char *)(iVar11 + -0x7414))" ( (cast_expression "(char *)(iVar11 + -0x7414)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + -0x7414)" ( (binary_expression "iVar11 + -0x7414" identifier + number_literal) ))) ))))) ;) (if_statement "if (pppsVar8 == (sqlite3_value ***)0x0) {\n      (**(code **)(pcVar26 + 0xc2074))(in_a3);\n    }\n    else {\n      argv = (sqlite3_value **)0xffffffff;\n      pppsVar16 = pppsVar8;\n      (**(code **)(pcVar26 + 0xc2060))(in_a3);\n      (**(code **)(pcVar26 + 0xc1f10))(pppsVar8);\n    }" if (parenthesized_expression "(pppsVar8 == (sqlite3_value ***)0x0)" ( (binary_expression "pppsVar8 == (sqlite3_value ***)0x0" identifier == (cast_expression "(sqlite3_value ***)0x0" ( (type_descriptor "sqlite3_value ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) )) (compound_statement "{\n      (**(code **)(pcVar26 + 0xc2074))(in_a3);\n    }" { (expression_statement "(**(code **)(pcVar26 + 0xc2074))(in_a3);" (call_expression "(**(code **)(pcVar26 + 0xc2074))(in_a3)" (parenthesized_expression "(**(code **)(pcVar26 + 0xc2074))" ( (pointer_expression "**(code **)(pcVar26 + 0xc2074)" * (pointer_expression "*(code **)(pcVar26 + 0xc2074)" * (cast_expression "(code **)(pcVar26 + 0xc2074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar26 + 0xc2074)" ( (binary_expression "pcVar26 + 0xc2074" identifier + number_literal) ))))) )) (argument_list "(in_a3)" ( identifier ))) ;) }) (else_clause "else {\n      argv = (sqlite3_value **)0xffffffff;\n      pppsVar16 = pppsVar8;\n      (**(code **)(pcVar26 + 0xc2060))(in_a3);\n      (**(code **)(pcVar26 + 0xc1f10))(pppsVar8);\n    }" else (compound_statement "{\n      argv = (sqlite3_value **)0xffffffff;\n      pppsVar16 = pppsVar8;\n      (**(code **)(pcVar26 + 0xc2060))(in_a3);\n      (**(code **)(pcVar26 + 0xc1f10))(pppsVar8);\n    }" { (expression_statement "argv = (sqlite3_value **)0xffffffff;" (assignment_expression "argv = (sqlite3_value **)0xffffffff" identifier = (cast_expression "(sqlite3_value **)0xffffffff" ( (type_descriptor "sqlite3_value **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "pppsVar16 = pppsVar8;" (assignment_expression "pppsVar16 = pppsVar8" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar26 + 0xc2060))(in_a3);" (call_expression "(**(code **)(pcVar26 + 0xc2060))(in_a3)" (parenthesized_expression "(**(code **)(pcVar26 + 0xc2060))" ( (pointer_expression "**(code **)(pcVar26 + 0xc2060)" * (pointer_expression "*(code **)(pcVar26 + 0xc2060)" * (cast_expression "(code **)(pcVar26 + 0xc2060)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar26 + 0xc2060)" ( (binary_expression "pcVar26 + 0xc2060" identifier + number_literal) ))))) )) (argument_list "(in_a3)" ( identifier ))) ;) (expression_statement "(**(code **)(pcVar26 + 0xc1f10))(pppsVar8);" (call_expression "(**(code **)(pcVar26 + 0xc1f10))(pppsVar8)" (parenthesized_expression "(**(code **)(pcVar26 + 0xc1f10))" ( (pointer_expression "**(code **)(pcVar26 + 0xc1f10)" * (pointer_expression "*(code **)(pcVar26 + 0xc1f10)" * (cast_expression "(code **)(pcVar26 + 0xc1f10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar26 + 0xc1f10)" ( (binary_expression "pcVar26 + 0xc1f10" identifier + number_literal) ))))) )) (argument_list "(pppsVar8)" ( identifier ))) ;) }))) })) (labeled_statement "LAB_000997bc:\n  if (psStack_124 == (sqlite3_context *)*piVar19) {\n    return;\n  }" statement_identifier : (if_statement "if (psStack_124 == (sqlite3_context *)*piVar19) {\n    return;\n  }" if (parenthesized_expression "(psStack_124 == (sqlite3_context *)*piVar19)" ( (binary_expression "psStack_124 == (sqlite3_context *)*piVar19" identifier == (cast_expression "(sqlite3_context *)*piVar19" ( (type_descriptor "sqlite3_context *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar19" * identifier))) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) }))) (expression_statement "pcVar26 = *(code **)(pcVar26 + 0xc2300);" (assignment_expression "pcVar26 = *(code **)(pcVar26 + 0xc2300)" identifier = (pointer_expression "*(code **)(pcVar26 + 0xc2300)" * (cast_expression "(code **)(pcVar26 + 0xc2300)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar26 + 0xc2300)" ( (binary_expression "pcVar26 + 0xc2300" identifier + number_literal) ))))) ;) (expression_statement "pCtx = psStack_124;" (assignment_expression "pCtx = psStack_124" identifier = identifier) ;) (expression_statement "(*pcVar26)();" (call_expression "(*pcVar26)()" (parenthesized_expression "(*pcVar26)" ( (pointer_expression "*pcVar26" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pJVar21 = jsonParseCached(pCtx,argv,pCtx);" (assignment_expression "pJVar21 = jsonParseCached(pCtx,argv,pCtx)" identifier = (call_expression "jsonParseCached(pCtx,argv,pCtx)" identifier (argument_list "(pCtx,argv,pCtx)" ( identifier , identifier , identifier )))) ;) (if_statement "if (pJVar21 != (JsonParse *)0x0) {\n    if (pppsVar16 == (sqlite3_value ***)0x2) {\n      pcVar10 = (char *)(**(code **)(pcVar26 + 0xc1dd4))(argv[1]);\n      pJVar9 = jsonLookup(pJVar21,pcVar10,(int *)0x0,pCtx);\n    }\n    else {\n      pJVar9 = pJVar21->aNode;\n    }\n    if (pJVar9 != (JsonNode *)0x0) {\n                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (**(code **)(pcVar26 + 0xc1e3c))\n                (pCtx,*(undefined4 *)\n                       ((uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c),0xffffffff,\n                 0);\n      return;\n    }\n  }" if (parenthesized_expression "(pJVar21 != (JsonParse *)0x0)" ( (binary_expression "pJVar21 != (JsonParse *)0x0" identifier != (cast_expression "(JsonParse *)0x0" ( (type_descriptor "JsonParse *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (pppsVar16 == (sqlite3_value ***)0x2) {\n      pcVar10 = (char *)(**(code **)(pcVar26 + 0xc1dd4))(argv[1]);\n      pJVar9 = jsonLookup(pJVar21,pcVar10,(int *)0x0,pCtx);\n    }\n    else {\n      pJVar9 = pJVar21->aNode;\n    }\n    if (pJVar9 != (JsonNode *)0x0) {\n                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (**(code **)(pcVar26 + 0xc1e3c))\n                (pCtx,*(undefined4 *)\n                       ((uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c),0xffffffff,\n                 0);\n      return;\n    }\n  }" { (if_statement "if (pppsVar16 == (sqlite3_value ***)0x2) {\n      pcVar10 = (char *)(**(code **)(pcVar26 + 0xc1dd4))(argv[1]);\n      pJVar9 = jsonLookup(pJVar21,pcVar10,(int *)0x0,pCtx);\n    }\n    else {\n      pJVar9 = pJVar21->aNode;\n    }" if (parenthesized_expression "(pppsVar16 == (sqlite3_value ***)0x2)" ( (binary_expression "pppsVar16 == (sqlite3_value ***)0x2" identifier == (cast_expression "(sqlite3_value ***)0x2" ( (type_descriptor "sqlite3_value ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) )) (compound_statement "{\n      pcVar10 = (char *)(**(code **)(pcVar26 + 0xc1dd4))(argv[1]);\n      pJVar9 = jsonLookup(pJVar21,pcVar10,(int *)0x0,pCtx);\n    }" { (expression_statement "pcVar10 = (char *)(**(code **)(pcVar26 + 0xc1dd4))(argv[1]);" (assignment_expression "pcVar10 = (char *)(**(code **)(pcVar26 + 0xc1dd4))(argv[1])" identifier = (cast_expression "(char *)(**(code **)(pcVar26 + 0xc1dd4))(argv[1])" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar26 + 0xc1dd4))(argv[1])" (parenthesized_expression "(**(code **)(pcVar26 + 0xc1dd4))" ( (pointer_expression "**(code **)(pcVar26 + 0xc1dd4)" * (pointer_expression "*(code **)(pcVar26 + 0xc1dd4)" * (cast_expression "(code **)(pcVar26 + 0xc1dd4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar26 + 0xc1dd4)" ( (binary_expression "pcVar26 + 0xc1dd4" identifier + number_literal) ))))) )) (argument_list "(argv[1])" ( (subscript_expression "argv[1]" identifier [ number_literal ]) ))))) ;) (expression_statement "pJVar9 = jsonLookup(pJVar21,pcVar10,(int *)0x0,pCtx);" (assignment_expression "pJVar9 = jsonLookup(pJVar21,pcVar10,(int *)0x0,pCtx)" identifier = (call_expression "jsonLookup(pJVar21,pcVar10,(int *)0x0,pCtx)" identifier (argument_list "(pJVar21,pcVar10,(int *)0x0,pCtx)" ( identifier , identifier , (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , identifier )))) ;) }) (else_clause "else {\n      pJVar9 = pJVar21->aNode;\n    }" else (compound_statement "{\n      pJVar9 = pJVar21->aNode;\n    }" { (expression_statement "pJVar9 = pJVar21->aNode;" (assignment_expression "pJVar9 = pJVar21->aNode" identifier = (field_expression "pJVar21->aNode" identifier -> field_identifier)) ;) }))) (if_statement "if (pJVar9 != (JsonNode *)0x0) {\n                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (**(code **)(pcVar26 + 0xc1e3c))\n                (pCtx,*(undefined4 *)\n                       ((uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c),0xffffffff,\n                 0);\n      return;\n    }" if (parenthesized_expression "(pJVar9 != (JsonNode *)0x0)" ( (binary_expression "pJVar9 != (JsonNode *)0x0" identifier != (cast_expression "(JsonNode *)0x0" ( (type_descriptor "JsonNode *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n      (**(code **)(pcVar26 + 0xc1e3c))\n                (pCtx,*(undefined4 *)\n                       ((uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c),0xffffffff,\n                 0);\n      return;\n    }" { comment comment (expression_statement "(**(code **)(pcVar26 + 0xc1e3c))\n                (pCtx,*(undefined4 *)\n                       ((uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c),0xffffffff,\n                 0);" (call_expression "(**(code **)(pcVar26 + 0xc1e3c))\n                (pCtx,*(undefined4 *)\n                       ((uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c),0xffffffff,\n                 0)" (parenthesized_expression "(**(code **)(pcVar26 + 0xc1e3c))" ( (pointer_expression "**(code **)(pcVar26 + 0xc1e3c)" * (pointer_expression "*(code **)(pcVar26 + 0xc1e3c)" * (cast_expression "(code **)(pcVar26 + 0xc1e3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar26 + 0xc1e3c)" ( (binary_expression "pcVar26 + 0xc1e3c" identifier + number_literal) ))))) )) (argument_list "(pCtx,*(undefined4 *)\n                       ((uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c),0xffffffff,\n                 0)" ( identifier , (pointer_expression "*(undefined4 *)\n                       ((uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c)" * (cast_expression "(undefined4 *)\n                       ((uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c)" ( (binary_expression "(uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98) + -0x6c1c" (binary_expression "(uint)pJVar9->eType * 4 + *(int *)(pcVar26 + 0xc1d98)" (binary_expression "(uint)pJVar9->eType * 4" (cast_expression "(uint)pJVar9->eType" ( (type_descriptor "uint" type_identifier) ) (field_expression "pJVar9->eType" identifier -> field_identifier)) * number_literal) + (pointer_expression "*(int *)(pcVar26 + 0xc1d98)" * (cast_expression "(int *)(pcVar26 + 0xc1d98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar26 + 0xc1d98)" ( (binary_expression "pcVar26 + 0xc1d98" identifier + number_literal) ))))) + number_literal) )))) , number_literal , number_literal ))) ;) (return_statement "return;" return ;) })) })) (return_statement "return;" return ;) (labeled_statement "code_r0x000993b8:\n  uVar12 = pJVar15->nAlloc;" statement_identifier : (expression_statement "uVar12 = pJVar15->nAlloc;" (assignment_expression "uVar12 = pJVar15->nAlloc" identifier = (field_expression "pJVar15->nAlloc" identifier -> field_identifier)) ;)) (expression_statement "iVar11 = iVar11 + 1;" (assignment_expression "iVar11 = iVar11 + 1" identifier = (binary_expression "iVar11 + 1" identifier + number_literal)) ;) (goto_statement "goto LAB_000993bc;" goto statement_identifier ;) })))
(translation_unit "byte ** FUN_00098f2c(int **param_1,int **param_2,int **param_3,int *param_4)\n\n{\n  int *piVar1;\n  bool bVar2;\n  undefined *puVar3;\n  byte **ppbVar4;\n  int **ppiVar5;\n  undefined4 uVar6;\n  int iVar7;\n  int iVar8;\n  undefined4 uVar9;\n  int iVar10;\n  int *piVar11;\n  byte **ppbVar12;\n  int *piVar13;\n  int **ppiVar14;\n  byte bVar15;\n  int **ppiVar16;\n  int **ppiVar17;\n  byte **ppbVar18;\n  byte *pbVar19;\n  int *piVar20;\n  undefined1 uVar21;\n  uint uVar22;\n  uint uVar23;\n  int **unaff_s1;\n  int *piVar24;\n  undefined4 *puVar25;\n  int **unaff_s2;\n  int **unaff_s3;\n  int *piVar26;\n  undefined *puVar27;\n  code *pcVar28;\n  double dVar29;\n  undefined8 uVar30;\n  int *local_resc;\n  byte **ppbStack_128;\n  byte *pbStack_d8;\n  int *piStack_d4;\n  code *local_d0;\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined1 local_a0;\n  int local_9c;\n  int **local_98;\n  int *local_94;\n  int local_90;\n  int **local_8c;\n  int **local_88;\n  undefined4 local_84;\n  undefined *local_70;\n  int *local_64;\n  int local_60;\n  byte **local_5c;\n  undefined *local_58;\n  int **local_54;\n  int **local_50;\n  int **local_4c;\n  \n  puVar3 = PTR___stack_chk_guard_0015ba2c;\n  ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c;\n  ppiVar14 = param_1;\n  ppiVar16 = param_2;\n  local_54 = unaff_s1;\n  local_4c = unaff_s3;\n  local_resc = param_4;\n  if (*param_1 == (int *)0x0) {\n    ppiVar16 = &local_resc;\n    ppiVar5 = (int **)sqlite3_vmprintf(param_3);\n    if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)();\n    *param_2 = (int *)unaff_s2;\n    local_54 = param_1;\n    local_4c = param_2;\n  }\n  ppbVar4 = *(byte ***)puVar3;\n  if (ppbVar12 == ppbVar4) {\n    return ppbVar4;\n  }\n  puVar27 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_70 = puVar27 + 0xca57c;\n  local_58 = puVar3;\n  piVar24 = *(int **)(puVar27 + 0xc29f8);\n  local_64 = (int *)0x0;\n  local_5c = (byte **)*piVar24;\n  local_50 = unaff_s2;\n  uVar6 = (**(code **)(puVar27 + 0xc2694))();\n  iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3);\n  iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3);\n  ppiVar5 = ppiVar14;\n  if (ppiVar16 == (int **)&SUB_00000002) {\n    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);\n    param_4 = &local_60;\n    local_60 = 0;\n    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);\n    if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n  }\n  else {\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }\nLAB_00099118:\n  if (local_5c == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }\n  pcVar28 = *(code **)(local_70 + -0x7ba0);\n  uVar6 = 0x992a0;\n  (*pcVar28)();\n  local_8c = ppiVar14;\n  local_94 = piVar24;\n  local_90 = iVar7;\n  piVar24 = &local_c8;\n  local_d0 = pcVar28 + 0xca310;\n  local_84 = uVar6;\n  local_88 = ppiVar16;\n  local_98 = param_3;\n  piVar26 = *(int **)(pcVar28 + 0xc278c);\n  piVar20 = *ppiVar17;\n  local_c8 = 0;\n  local_c4 = 0;\n  local_c0 = 0;\n  local_bc = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = *piVar26;\n  pbVar19 = (byte *)((int)piVar20 * 2);\n  if ((int)piVar20 < 1) {\n    uVar23 = 0;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099480:\n    piVar24 = ppiVar5[0xc];\n    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));\n    piVar11 = piVar13;\n    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));\n    if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }\n    piVar24 = piVar20;\n    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);\n    ppbVar12 = (byte **)0x0;\n    ppiVar17[0xc] = piVar11;\n    ppiVar17[0xd] = piVar20;\n    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }\nLAB_000994e0:\n  if (local_9c == *piVar26) {\n    return ppbVar12;\n  }\n  pcVar28 = *(code **)(local_d0 + -0x7ba0);\n  iVar7 = local_9c;\n  (*pcVar28)();\n  ppbVar4 = &pbStack_d8;\n  puVar25 = *(undefined4 **)(pcVar28 + 0xc2410);\n  ppbVar18 = (byte **)*puVar25;\n  ppbVar12 = ppbVar18;\n  pbStack_d8 = pbVar19;\n  piStack_d4 = param_4;\n  if ((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))) goto LAB_0009967c;\n  piVar20 = (int *)sqlite3_vmprintf();\n  if (piVar20 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;\n  }\n  else {\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }\n  *(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1;\n  ppbVar12 = ppbVar4;\nLAB_0009967c:\n  ppbVar4 = (byte **)*puVar25;\n  if (ppbVar18 == ppbVar4) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc23f4);\n  (*pcVar28)();\n  piVar20 = *(int **)(pcVar28 + 0xc231c);\n  ppbStack_128 = (byte **)0x0;\n  iVar7 = *piVar20;\n  ppbVar4 = (byte **)0x0;\n  if (ppbVar12 != (byte **)0x0) {\n    if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }\n  }\n  if (iVar7 == *piVar20) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc2300);\n  (*pcVar28)();\n  ppbVar4 = (byte **)FUN_0008ad48();\n  if (ppbVar4 != (byte **)0x0) {\n    if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }\n    if (ppbVar4 != (byte **)0x0) {\n                    \n                    \n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }\n  }\n  return ppbVar4;\ncode_r0x000993b8:\n  piVar13 = ppiVar17[1];\n  iVar7 = iVar7 + 1;\n  goto LAB_000993bc;\n}\n\n" (function_definition "byte ** FUN_00098f2c(int **param_1,int **param_2,int **param_3,int *param_4)\n\n{\n  int *piVar1;\n  bool bVar2;\n  undefined *puVar3;\n  byte **ppbVar4;\n  int **ppiVar5;\n  undefined4 uVar6;\n  int iVar7;\n  int iVar8;\n  undefined4 uVar9;\n  int iVar10;\n  int *piVar11;\n  byte **ppbVar12;\n  int *piVar13;\n  int **ppiVar14;\n  byte bVar15;\n  int **ppiVar16;\n  int **ppiVar17;\n  byte **ppbVar18;\n  byte *pbVar19;\n  int *piVar20;\n  undefined1 uVar21;\n  uint uVar22;\n  uint uVar23;\n  int **unaff_s1;\n  int *piVar24;\n  undefined4 *puVar25;\n  int **unaff_s2;\n  int **unaff_s3;\n  int *piVar26;\n  undefined *puVar27;\n  code *pcVar28;\n  double dVar29;\n  undefined8 uVar30;\n  int *local_resc;\n  byte **ppbStack_128;\n  byte *pbStack_d8;\n  int *piStack_d4;\n  code *local_d0;\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined1 local_a0;\n  int local_9c;\n  int **local_98;\n  int *local_94;\n  int local_90;\n  int **local_8c;\n  int **local_88;\n  undefined4 local_84;\n  undefined *local_70;\n  int *local_64;\n  int local_60;\n  byte **local_5c;\n  undefined *local_58;\n  int **local_54;\n  int **local_50;\n  int **local_4c;\n  \n  puVar3 = PTR___stack_chk_guard_0015ba2c;\n  ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c;\n  ppiVar14 = param_1;\n  ppiVar16 = param_2;\n  local_54 = unaff_s1;\n  local_4c = unaff_s3;\n  local_resc = param_4;\n  if (*param_1 == (int *)0x0) {\n    ppiVar16 = &local_resc;\n    ppiVar5 = (int **)sqlite3_vmprintf(param_3);\n    if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)();\n    *param_2 = (int *)unaff_s2;\n    local_54 = param_1;\n    local_4c = param_2;\n  }\n  ppbVar4 = *(byte ***)puVar3;\n  if (ppbVar12 == ppbVar4) {\n    return ppbVar4;\n  }\n  puVar27 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_70 = puVar27 + 0xca57c;\n  local_58 = puVar3;\n  piVar24 = *(int **)(puVar27 + 0xc29f8);\n  local_64 = (int *)0x0;\n  local_5c = (byte **)*piVar24;\n  local_50 = unaff_s2;\n  uVar6 = (**(code **)(puVar27 + 0xc2694))();\n  iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3);\n  iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3);\n  ppiVar5 = ppiVar14;\n  if (ppiVar16 == (int **)&SUB_00000002) {\n    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);\n    param_4 = &local_60;\n    local_60 = 0;\n    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);\n    if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n  }\n  else {\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }\nLAB_00099118:\n  if (local_5c == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }\n  pcVar28 = *(code **)(local_70 + -0x7ba0);\n  uVar6 = 0x992a0;\n  (*pcVar28)();\n  local_8c = ppiVar14;\n  local_94 = piVar24;\n  local_90 = iVar7;\n  piVar24 = &local_c8;\n  local_d0 = pcVar28 + 0xca310;\n  local_84 = uVar6;\n  local_88 = ppiVar16;\n  local_98 = param_3;\n  piVar26 = *(int **)(pcVar28 + 0xc278c);\n  piVar20 = *ppiVar17;\n  local_c8 = 0;\n  local_c4 = 0;\n  local_c0 = 0;\n  local_bc = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = *piVar26;\n  pbVar19 = (byte *)((int)piVar20 * 2);\n  if ((int)piVar20 < 1) {\n    uVar23 = 0;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099480:\n    piVar24 = ppiVar5[0xc];\n    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));\n    piVar11 = piVar13;\n    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));\n    if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }\n    piVar24 = piVar20;\n    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);\n    ppbVar12 = (byte **)0x0;\n    ppiVar17[0xc] = piVar11;\n    ppiVar17[0xd] = piVar20;\n    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }\nLAB_000994e0:\n  if (local_9c == *piVar26) {\n    return ppbVar12;\n  }\n  pcVar28 = *(code **)(local_d0 + -0x7ba0);\n  iVar7 = local_9c;\n  (*pcVar28)();\n  ppbVar4 = &pbStack_d8;\n  puVar25 = *(undefined4 **)(pcVar28 + 0xc2410);\n  ppbVar18 = (byte **)*puVar25;\n  ppbVar12 = ppbVar18;\n  pbStack_d8 = pbVar19;\n  piStack_d4 = param_4;\n  if ((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))) goto LAB_0009967c;\n  piVar20 = (int *)sqlite3_vmprintf();\n  if (piVar20 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;\n  }\n  else {\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }\n  *(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1;\n  ppbVar12 = ppbVar4;\nLAB_0009967c:\n  ppbVar4 = (byte **)*puVar25;\n  if (ppbVar18 == ppbVar4) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc23f4);\n  (*pcVar28)();\n  piVar20 = *(int **)(pcVar28 + 0xc231c);\n  ppbStack_128 = (byte **)0x0;\n  iVar7 = *piVar20;\n  ppbVar4 = (byte **)0x0;\n  if (ppbVar12 != (byte **)0x0) {\n    if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }\n  }\n  if (iVar7 == *piVar20) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc2300);\n  (*pcVar28)();\n  ppbVar4 = (byte **)FUN_0008ad48();\n  if (ppbVar4 != (byte **)0x0) {\n    if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }\n    if (ppbVar4 != (byte **)0x0) {\n                    \n                    \n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }\n  }\n  return ppbVar4;\ncode_r0x000993b8:\n  piVar13 = ppiVar17[1];\n  iVar7 = iVar7 + 1;\n  goto LAB_000993bc;\n}" type_identifier (pointer_declarator "** FUN_00098f2c(int **param_1,int **param_2,int **param_3,int *param_4)" * (pointer_declarator "* FUN_00098f2c(int **param_1,int **param_2,int **param_3,int *param_4)" * (function_declarator "FUN_00098f2c(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  int *piVar1;\n  bool bVar2;\n  undefined *puVar3;\n  byte **ppbVar4;\n  int **ppiVar5;\n  undefined4 uVar6;\n  int iVar7;\n  int iVar8;\n  undefined4 uVar9;\n  int iVar10;\n  int *piVar11;\n  byte **ppbVar12;\n  int *piVar13;\n  int **ppiVar14;\n  byte bVar15;\n  int **ppiVar16;\n  int **ppiVar17;\n  byte **ppbVar18;\n  byte *pbVar19;\n  int *piVar20;\n  undefined1 uVar21;\n  uint uVar22;\n  uint uVar23;\n  int **unaff_s1;\n  int *piVar24;\n  undefined4 *puVar25;\n  int **unaff_s2;\n  int **unaff_s3;\n  int *piVar26;\n  undefined *puVar27;\n  code *pcVar28;\n  double dVar29;\n  undefined8 uVar30;\n  int *local_resc;\n  byte **ppbStack_128;\n  byte *pbStack_d8;\n  int *piStack_d4;\n  code *local_d0;\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined1 local_a0;\n  int local_9c;\n  int **local_98;\n  int *local_94;\n  int local_90;\n  int **local_8c;\n  int **local_88;\n  undefined4 local_84;\n  undefined *local_70;\n  int *local_64;\n  int local_60;\n  byte **local_5c;\n  undefined *local_58;\n  int **local_54;\n  int **local_50;\n  int **local_4c;\n  \n  puVar3 = PTR___stack_chk_guard_0015ba2c;\n  ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c;\n  ppiVar14 = param_1;\n  ppiVar16 = param_2;\n  local_54 = unaff_s1;\n  local_4c = unaff_s3;\n  local_resc = param_4;\n  if (*param_1 == (int *)0x0) {\n    ppiVar16 = &local_resc;\n    ppiVar5 = (int **)sqlite3_vmprintf(param_3);\n    if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)();\n    *param_2 = (int *)unaff_s2;\n    local_54 = param_1;\n    local_4c = param_2;\n  }\n  ppbVar4 = *(byte ***)puVar3;\n  if (ppbVar12 == ppbVar4) {\n    return ppbVar4;\n  }\n  puVar27 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_70 = puVar27 + 0xca57c;\n  local_58 = puVar3;\n  piVar24 = *(int **)(puVar27 + 0xc29f8);\n  local_64 = (int *)0x0;\n  local_5c = (byte **)*piVar24;\n  local_50 = unaff_s2;\n  uVar6 = (**(code **)(puVar27 + 0xc2694))();\n  iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3);\n  iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3);\n  ppiVar5 = ppiVar14;\n  if (ppiVar16 == (int **)&SUB_00000002) {\n    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);\n    param_4 = &local_60;\n    local_60 = 0;\n    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);\n    if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n  }\n  else {\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }\nLAB_00099118:\n  if (local_5c == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }\n  pcVar28 = *(code **)(local_70 + -0x7ba0);\n  uVar6 = 0x992a0;\n  (*pcVar28)();\n  local_8c = ppiVar14;\n  local_94 = piVar24;\n  local_90 = iVar7;\n  piVar24 = &local_c8;\n  local_d0 = pcVar28 + 0xca310;\n  local_84 = uVar6;\n  local_88 = ppiVar16;\n  local_98 = param_3;\n  piVar26 = *(int **)(pcVar28 + 0xc278c);\n  piVar20 = *ppiVar17;\n  local_c8 = 0;\n  local_c4 = 0;\n  local_c0 = 0;\n  local_bc = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = *piVar26;\n  pbVar19 = (byte *)((int)piVar20 * 2);\n  if ((int)piVar20 < 1) {\n    uVar23 = 0;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099480:\n    piVar24 = ppiVar5[0xc];\n    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));\n    piVar11 = piVar13;\n    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));\n    if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }\n    piVar24 = piVar20;\n    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);\n    ppbVar12 = (byte **)0x0;\n    ppiVar17[0xc] = piVar11;\n    ppiVar17[0xd] = piVar20;\n    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }\nLAB_000994e0:\n  if (local_9c == *piVar26) {\n    return ppbVar12;\n  }\n  pcVar28 = *(code **)(local_d0 + -0x7ba0);\n  iVar7 = local_9c;\n  (*pcVar28)();\n  ppbVar4 = &pbStack_d8;\n  puVar25 = *(undefined4 **)(pcVar28 + 0xc2410);\n  ppbVar18 = (byte **)*puVar25;\n  ppbVar12 = ppbVar18;\n  pbStack_d8 = pbVar19;\n  piStack_d4 = param_4;\n  if ((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))) goto LAB_0009967c;\n  piVar20 = (int *)sqlite3_vmprintf();\n  if (piVar20 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;\n  }\n  else {\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }\n  *(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1;\n  ppbVar12 = ppbVar4;\nLAB_0009967c:\n  ppbVar4 = (byte **)*puVar25;\n  if (ppbVar18 == ppbVar4) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc23f4);\n  (*pcVar28)();\n  piVar20 = *(int **)(pcVar28 + 0xc231c);\n  ppbStack_128 = (byte **)0x0;\n  iVar7 = *piVar20;\n  ppbVar4 = (byte **)0x0;\n  if (ppbVar12 != (byte **)0x0) {\n    if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }\n  }\n  if (iVar7 == *piVar20) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc2300);\n  (*pcVar28)();\n  ppbVar4 = (byte **)FUN_0008ad48();\n  if (ppbVar4 != (byte **)0x0) {\n    if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }\n    if (ppbVar4 != (byte **)0x0) {\n                    \n                    \n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }\n  }\n  return ppbVar4;\ncode_r0x000993b8:\n  piVar13 = ppiVar17[1];\n  iVar7 = iVar7 + 1;\n  goto LAB_000993bc;\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "bool bVar2;" primitive_type identifier ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "byte **ppbVar4;" type_identifier (pointer_declarator "**ppbVar4" * (pointer_declarator "*ppbVar4" * identifier)) ;) (declaration "int **ppiVar5;" primitive_type (pointer_declarator "**ppiVar5" * (pointer_declarator "*ppiVar5" * identifier)) ;) (declaration "undefined4 uVar6;" type_identifier identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "undefined4 uVar9;" type_identifier identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "int *piVar11;" primitive_type (pointer_declarator "*piVar11" * identifier) ;) (declaration "byte **ppbVar12;" type_identifier (pointer_declarator "**ppbVar12" * (pointer_declarator "*ppbVar12" * identifier)) ;) (declaration "int *piVar13;" primitive_type (pointer_declarator "*piVar13" * identifier) ;) (declaration "int **ppiVar14;" primitive_type (pointer_declarator "**ppiVar14" * (pointer_declarator "*ppiVar14" * identifier)) ;) (declaration "byte bVar15;" type_identifier identifier ;) (declaration "int **ppiVar16;" primitive_type (pointer_declarator "**ppiVar16" * (pointer_declarator "*ppiVar16" * identifier)) ;) (declaration "int **ppiVar17;" primitive_type (pointer_declarator "**ppiVar17" * (pointer_declarator "*ppiVar17" * identifier)) ;) (declaration "byte **ppbVar18;" type_identifier (pointer_declarator "**ppbVar18" * (pointer_declarator "*ppbVar18" * identifier)) ;) (declaration "byte *pbVar19;" type_identifier (pointer_declarator "*pbVar19" * identifier) ;) (declaration "int *piVar20;" primitive_type (pointer_declarator "*piVar20" * identifier) ;) (declaration "undefined1 uVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "uint uVar23;" type_identifier identifier ;) (declaration "int **unaff_s1;" primitive_type (pointer_declarator "**unaff_s1" * (pointer_declarator "*unaff_s1" * 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 "undefined *puVar27;" type_identifier (pointer_declarator "*puVar27" * identifier) ;) (declaration "code *pcVar28;" type_identifier (pointer_declarator "*pcVar28" * identifier) ;) (declaration "double dVar29;" primitive_type identifier ;) (declaration "undefined8 uVar30;" type_identifier identifier ;) (declaration "int *local_resc;" primitive_type (pointer_declarator "*local_resc" * identifier) ;) (declaration "byte **ppbStack_128;" type_identifier (pointer_declarator "**ppbStack_128" * (pointer_declarator "*ppbStack_128" * identifier)) ;) (declaration "byte *pbStack_d8;" type_identifier (pointer_declarator "*pbStack_d8" * identifier) ;) (declaration "int *piStack_d4;" primitive_type (pointer_declarator "*piStack_d4" * identifier) ;) (declaration "code *local_d0;" type_identifier (pointer_declarator "*local_d0" * identifier) ;) (declaration "undefined4 local_c8;" type_identifier identifier ;) (declaration "undefined4 local_c4;" type_identifier identifier ;) (declaration "undefined4 local_c0;" type_identifier identifier ;) (declaration "undefined4 local_bc;" type_identifier identifier ;) (declaration "undefined4 local_b8;" type_identifier identifier ;) (declaration "undefined4 local_b4;" type_identifier identifier ;) (declaration "undefined4 local_b0;" type_identifier identifier ;) (declaration "undefined4 local_ac;" type_identifier identifier ;) (declaration "undefined4 local_a8;" type_identifier identifier ;) (declaration "undefined4 local_a4;" type_identifier identifier ;) (declaration "undefined1 local_a0;" type_identifier identifier ;) (declaration "int local_9c;" primitive_type identifier ;) (declaration "int **local_98;" primitive_type (pointer_declarator "**local_98" * (pointer_declarator "*local_98" * identifier)) ;) (declaration "int *local_94;" primitive_type (pointer_declarator "*local_94" * identifier) ;) (declaration "int local_90;" primitive_type identifier ;) (declaration "int **local_8c;" primitive_type (pointer_declarator "**local_8c" * (pointer_declarator "*local_8c" * identifier)) ;) (declaration "int **local_88;" primitive_type (pointer_declarator "**local_88" * (pointer_declarator "*local_88" * identifier)) ;) (declaration "undefined4 local_84;" type_identifier identifier ;) (declaration "undefined *local_70;" type_identifier (pointer_declarator "*local_70" * identifier) ;) (declaration "int *local_64;" primitive_type (pointer_declarator "*local_64" * identifier) ;) (declaration "int local_60;" primitive_type identifier ;) (declaration "byte **local_5c;" type_identifier (pointer_declarator "**local_5c" * (pointer_declarator "*local_5c" * identifier)) ;) (declaration "undefined *local_58;" type_identifier (pointer_declarator "*local_58" * identifier) ;) (declaration "int **local_54;" primitive_type (pointer_declarator "**local_54" * (pointer_declarator "*local_54" * identifier)) ;) (declaration "int **local_50;" primitive_type (pointer_declarator "**local_50" * (pointer_declarator "*local_50" * identifier)) ;) (declaration "int **local_4c;" primitive_type (pointer_declarator "**local_4c" * (pointer_declarator "*local_4c" * identifier)) ;) (expression_statement "puVar3 = PTR___stack_chk_guard_0015ba2c;" (assignment_expression "puVar3 = PTR___stack_chk_guard_0015ba2c" identifier = identifier) ;) (expression_statement "ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c;" (assignment_expression "ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c" identifier = (pointer_expression "*(byte ***)PTR___stack_chk_guard_0015ba2c" * (cast_expression "(byte ***)PTR___stack_chk_guard_0015ba2c" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) identifier))) ;) (expression_statement "ppiVar14 = param_1;" (assignment_expression "ppiVar14 = param_1" identifier = identifier) ;) (expression_statement "ppiVar16 = param_2;" (assignment_expression "ppiVar16 = param_2" identifier = identifier) ;) (expression_statement "local_54 = unaff_s1;" (assignment_expression "local_54 = unaff_s1" identifier = identifier) ;) (expression_statement "local_4c = unaff_s3;" (assignment_expression "local_4c = unaff_s3" identifier = identifier) ;) (expression_statement "local_resc = param_4;" (assignment_expression "local_resc = param_4" identifier = identifier) ;) (if_statement "if (*param_1 == (int *)0x0) {\n    ppiVar16 = &local_resc;\n    ppiVar5 = (int **)sqlite3_vmprintf(param_3);\n    if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)();\n    *param_2 = (int *)unaff_s2;\n    local_54 = param_1;\n    local_4c = param_2;\n  }" if (parenthesized_expression "(*param_1 == (int *)0x0)" ( (binary_expression "*param_1 == (int *)0x0" (pointer_expression "*param_1" * identifier) == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    ppiVar16 = &local_resc;\n    ppiVar5 = (int **)sqlite3_vmprintf(param_3);\n    if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)();\n    *param_2 = (int *)unaff_s2;\n    local_54 = param_1;\n    local_4c = param_2;\n  }" { (expression_statement "ppiVar16 = &local_resc;" (assignment_expression "ppiVar16 = &local_resc" identifier = (pointer_expression "&local_resc" & identifier)) ;) (expression_statement "ppiVar5 = (int **)sqlite3_vmprintf(param_3);" (assignment_expression "ppiVar5 = (int **)sqlite3_vmprintf(param_3)" identifier = (cast_expression "(int **)sqlite3_vmprintf(param_3)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "sqlite3_vmprintf(param_3)" identifier (argument_list "(param_3)" ( identifier ))))) ;) (if_statement "if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }" if (parenthesized_expression "(ppiVar5 == (int **)0x0)" ( (binary_expression "ppiVar5 == (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      *param_1 = (int *)0x7;\n      ppiVar14 = (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 "*param_1 = (int *)0x7;" (assignment_expression "*param_1 = (int *)0x7" (pointer_expression "*param_1" * identifier) = (cast_expression "(int *)0x7" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar14 = (int **)*param_2;" (assignment_expression "ppiVar14 = (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      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }" else (compound_statement "{\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }" { (expression_statement "ppiVar14 = (int **)*param_2;" (assignment_expression "ppiVar14 = (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 = ppiVar5;" (assignment_expression "unaff_s2 = ppiVar5" identifier = identifier) ;) (if_statement "if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\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 "{\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }" { (expression_statement "param_3 = ppiVar5;" (assignment_expression "param_3 = ppiVar5" identifier = identifier) ;) (expression_statement "unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);" (assignment_expression "unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624)" identifier = (cast_expression "(int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624)" identifier (argument_list "(PTR_LAB_0015b5e8 + 0x5624)" ( (binary_expression "PTR_LAB_0015b5e8 + 0x5624" identifier + number_literal) ))))) ;) (expression_statement "ppiVar16 = ppiVar14;" (assignment_expression "ppiVar16 = ppiVar14" identifier = identifier) ;) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(ppiVar5)" (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 "(ppiVar5)" ( 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 "ppiVar14 = (int **)*param_2;" (assignment_expression "ppiVar14 = (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 *)PTR_sqlite3_free_0015b620)();" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)()" (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 "()" ( ))) ;) (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 "local_54 = param_1;" (assignment_expression "local_54 = param_1" identifier = identifier) ;) (expression_statement "local_4c = param_2;" (assignment_expression "local_4c = param_2" identifier = identifier) ;) })) (expression_statement "ppbVar4 = *(byte ***)puVar3;" (assignment_expression "ppbVar4 = *(byte ***)puVar3" identifier = (pointer_expression "*(byte ***)puVar3" * (cast_expression "(byte ***)puVar3" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) identifier))) ;) (if_statement "if (ppbVar12 == ppbVar4) {\n    return ppbVar4;\n  }" if (parenthesized_expression "(ppbVar12 == ppbVar4)" ( (binary_expression "ppbVar12 == ppbVar4" identifier == identifier) )) (compound_statement "{\n    return ppbVar4;\n  }" { (return_statement "return ppbVar4;" return 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 "local_70 = puVar27 + 0xca57c;" (assignment_expression "local_70 = puVar27 + 0xca57c" identifier = (binary_expression "puVar27 + 0xca57c" identifier + number_literal)) ;) (expression_statement "local_58 = puVar3;" (assignment_expression "local_58 = puVar3" identifier = identifier) ;) (expression_statement "piVar24 = *(int **)(puVar27 + 0xc29f8);" (assignment_expression "piVar24 = *(int **)(puVar27 + 0xc29f8)" identifier = (pointer_expression "*(int **)(puVar27 + 0xc29f8)" * (cast_expression "(int **)(puVar27 + 0xc29f8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar27 + 0xc29f8)" ( (binary_expression "puVar27 + 0xc29f8" identifier + number_literal) ))))) ;) (expression_statement "local_64 = (int *)0x0;" (assignment_expression "local_64 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_5c = (byte **)*piVar24;" (assignment_expression "local_5c = (byte **)*piVar24" identifier = (cast_expression "(byte **)*piVar24" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*piVar24" * identifier))) ;) (expression_statement "local_50 = unaff_s2;" (assignment_expression "local_50 = unaff_s2" identifier = identifier) ;) (expression_statement "uVar6 = (**(code **)(puVar27 + 0xc2694))();" (assignment_expression "uVar6 = (**(code **)(puVar27 + 0xc2694))()" identifier = (call_expression "(**(code **)(puVar27 + 0xc2694))()" (parenthesized_expression "(**(code **)(puVar27 + 0xc2694))" ( (pointer_expression "**(code **)(puVar27 + 0xc2694)" * (pointer_expression "*(code **)(puVar27 + 0xc2694)" * (cast_expression "(code **)(puVar27 + 0xc2694)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar27 + 0xc2694)" ( (binary_expression "puVar27 + 0xc2694" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3);" (assignment_expression "iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3)" identifier = (call_expression "(**(code **)(local_70 + -0x7f9c))(*param_3)" (parenthesized_expression "(**(code **)(local_70 + -0x7f9c))" ( (pointer_expression "**(code **)(local_70 + -0x7f9c)" * (pointer_expression "*(code **)(local_70 + -0x7f9c)" * (cast_expression "(code **)(local_70 + -0x7f9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7f9c)" ( (binary_expression "local_70 + -0x7f9c" identifier + number_literal) ))))) )) (argument_list "(*param_3)" ( (pointer_expression "*param_3" * identifier) )))) ;) (expression_statement "iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3);" (assignment_expression "iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3)" identifier = (call_expression "(**(code **)(local_70 + -0x7fac))(*param_3)" (parenthesized_expression "(**(code **)(local_70 + -0x7fac))" ( (pointer_expression "**(code **)(local_70 + -0x7fac)" * (pointer_expression "*(code **)(local_70 + -0x7fac)" * (cast_expression "(code **)(local_70 + -0x7fac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7fac)" ( (binary_expression "local_70 + -0x7fac" identifier + number_literal) ))))) )) (argument_list "(*param_3)" ( (pointer_expression "*param_3" * identifier) )))) ;) (expression_statement "ppiVar5 = ppiVar14;" (assignment_expression "ppiVar5 = ppiVar14" identifier = identifier) ;) (if_statement "if (ppiVar16 == (int **)&SUB_00000002) {\n    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);\n    param_4 = &local_60;\n    local_60 = 0;\n    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);\n    if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n  }\n  else {\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }" if (parenthesized_expression "(ppiVar16 == (int **)&SUB_00000002)" ( (binary_expression "ppiVar16 == (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    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);\n    param_4 = &local_60;\n    local_60 = 0;\n    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);\n    if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n  }" { (expression_statement "uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);" (assignment_expression "uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14)" identifier = (call_expression "(**(code **)(local_70 + -0x7ed0))(ppiVar14)" (parenthesized_expression "(**(code **)(local_70 + -0x7ed0))" ( (pointer_expression "**(code **)(local_70 + -0x7ed0)" * (pointer_expression "*(code **)(local_70 + -0x7ed0)" * (cast_expression "(code **)(local_70 + -0x7ed0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7ed0)" ( (binary_expression "local_70 + -0x7ed0" identifier + number_literal) ))))) )) (argument_list "(ppiVar14)" ( identifier )))) ;) (expression_statement "param_4 = &local_60;" (assignment_expression "param_4 = &local_60" identifier = (pointer_expression "&local_60" & identifier)) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) (expression_statement "(**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7d60))" ( (pointer_expression "**(code **)(local_70 + -0x7d60)" * (pointer_expression "*(code **)(local_70 + -0x7d60)" * (cast_expression "(code **)(local_70 + -0x7d60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7d60)" ( (binary_expression "local_70 + -0x7d60" identifier + number_literal) ))))) )) (argument_list "(uVar9,0x3ec,0xffffffff)" ( identifier , number_literal , number_literal ))) ;) (if_statement "if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }" if (parenthesized_expression "(local_60 == 0)" ( (binary_expression "local_60 == 0" identifier == number_literal) )) (compound_statement "{\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }" { (expression_statement "ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);" (assignment_expression "ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434)" identifier = (cast_expression "(int **)(*(int *)(local_70 + -0x7fb4) + -0x7434)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(local_70 + -0x7fb4) + -0x7434)" ( (binary_expression "*(int *)(local_70 + -0x7fb4) + -0x7434" (pointer_expression "*(int *)(local_70 + -0x7fb4)" * (cast_expression "(int *)(local_70 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + -0x7fb4)" ( (binary_expression "local_70 + -0x7fb4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7e40))" ( (pointer_expression "**(code **)(local_70 + -0x7e40)" * (pointer_expression "*(code **)(local_70 + -0x7e40)" * (cast_expression "(code **)(local_70 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7e40)" ( (binary_expression "local_70 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(ppiVar14,ppiVar17,0xffffffff)" ( identifier , identifier , number_literal ))) ;) }) (else_clause "else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }" else (compound_statement "{\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }" { (expression_statement "iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);" (assignment_expression "iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1])" identifier = (call_expression "(**(code **)(local_70 + -0x7fac))(param_3[1])" (parenthesized_expression "(**(code **)(local_70 + -0x7fac))" ( (pointer_expression "**(code **)(local_70 + -0x7fac)" * (pointer_expression "*(code **)(local_70 + -0x7fac)" * (cast_expression "(code **)(local_70 + -0x7fac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7fac)" ( (binary_expression "local_70 + -0x7fac" identifier + number_literal) ))))) )) (argument_list "(param_3[1])" ( (subscript_expression "param_3[1]" identifier [ number_literal ]) )))) ;) (if_statement "if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }" if (parenthesized_expression "((iVar7 != 0) && (iVar10 == 4))" ( (binary_expression "(iVar7 != 0) && (iVar10 == 4)" (parenthesized_expression "(iVar7 != 0)" ( (binary_expression "iVar7 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar10 == 4)" ( (binary_expression "iVar10 == 4" identifier == number_literal) ))) )) (compound_statement "{\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }" { (expression_statement "local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);" (assignment_expression "local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1])" identifier = (cast_expression "(int *)(**(code **)(local_70 + -0x7fb0))(param_3[1])" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(local_70 + -0x7fb0))(param_3[1])" (parenthesized_expression "(**(code **)(local_70 + -0x7fb0))" ( (pointer_expression "**(code **)(local_70 + -0x7fb0)" * (pointer_expression "*(code **)(local_70 + -0x7fb0)" * (cast_expression "(code **)(local_70 + -0x7fb0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7fb0)" ( (binary_expression "local_70 + -0x7fb0" identifier + number_literal) ))))) )) (argument_list "(param_3[1])" ( (subscript_expression "param_3[1]" identifier [ number_literal ]) ))))) ;) (expression_statement "local_64 = (int *)*local_64;" (assignment_expression "local_64 = (int *)*local_64" identifier = (cast_expression "(int *)*local_64" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_64" * identifier))) ;) (expression_statement "piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);" (assignment_expression "piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64)" identifier = (cast_expression "(int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64)" (parenthesized_expression "(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))" ( (pointer_expression "*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8)" * (cast_expression "(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(local_70 + -0x7eb0) + 0x43f8)" ( (binary_expression "*(int *)(local_70 + -0x7eb0) + 0x43f8" (pointer_expression "*(int *)(local_70 + -0x7eb0)" * (cast_expression "(int *)(local_70 + -0x7eb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + -0x7eb0)" ( (binary_expression "local_70 + -0x7eb0" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar6,iVar7,iVar8 + 1,local_64)" ( identifier , identifier , (binary_expression "iVar8 + 1" identifier + number_literal) , identifier ))))) ;) (if_statement "if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }" if (parenthesized_expression "(local_64 == piVar20)" ( (binary_expression "local_64 == piVar20" identifier == identifier) )) (compound_statement "{\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }" { (expression_statement "(**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7e40))" ( (pointer_expression "**(code **)(local_70 + -0x7e40)" * (pointer_expression "*(code **)(local_70 + -0x7e40)" * (cast_expression "(code **)(local_70 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7e40)" ( (binary_expression "local_70 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff)" ( identifier , (binary_expression "*(int *)(local_70 + -0x7fc8) + 0x52ac" (pointer_expression "*(int *)(local_70 + -0x7fc8)" * (cast_expression "(int *)(local_70 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + -0x7fc8)" ( (binary_expression "local_70 + -0x7fc8" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (goto_statement "goto LAB_000990fc;" goto statement_identifier ;) })) (expression_statement "ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);" (assignment_expression "ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c)" identifier = (cast_expression "(int **)(*(int *)(local_70 + -0x7fb4) + -0x744c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(local_70 + -0x7fb4) + -0x744c)" ( (binary_expression "*(int *)(local_70 + -0x7fb4) + -0x744c" (pointer_expression "*(int *)(local_70 + -0x7fb4)" * (cast_expression "(int *)(local_70 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + -0x7fb4)" ( (binary_expression "local_70 + -0x7fb4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7e40))" ( (pointer_expression "**(code **)(local_70 + -0x7e40)" * (pointer_expression "*(code **)(local_70 + -0x7e40)" * (cast_expression "(code **)(local_70 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7e40)" ( (binary_expression "local_70 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(ppiVar14,ppiVar17,0xffffffff)" ( identifier , identifier , number_literal ))) ;) }))) }) (else_clause "else {\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }" else (compound_statement "{\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }" { (if_statement "if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }" { (labeled_statement "LAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);" statement_identifier : (expression_statement "iVar8 = *(int *)(local_70 + -0x7fb4);" (assignment_expression "iVar8 = *(int *)(local_70 + -0x7fb4)" identifier = (pointer_expression "*(int *)(local_70 + -0x7fb4)" * (cast_expression "(int *)(local_70 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + -0x7fb4)" ( (binary_expression "local_70 + -0x7fb4" identifier + number_literal) ))))) ;)) (if_statement "if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }" if (parenthesized_expression "(local_64 != (int *)0x0)" ( (binary_expression "local_64 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }" { (labeled_statement "LAB_000990fc:\n        param_4 = (int *)0xffffffff;" statement_identifier : (expression_statement "param_4 = (int *)0xffffffff;" (assignment_expression "param_4 = (int *)0xffffffff" identifier = (cast_expression "(int *)0xffffffff" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "ppiVar17 = &local_64;" (assignment_expression "ppiVar17 = &local_64" identifier = (pointer_expression "&local_64" & identifier)) ;) (expression_statement "(**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);" (call_expression "(**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4)" (parenthesized_expression "(**(code **)(local_70 + -0x7e28))" ( (pointer_expression "**(code **)(local_70 + -0x7e28)" * (pointer_expression "*(code **)(local_70 + -0x7e28)" * (cast_expression "(code **)(local_70 + -0x7e28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7e28)" ( (binary_expression "local_70 + -0x7e28" identifier + number_literal) ))))) )) (argument_list "(ppiVar14,ppiVar17,4)" ( identifier , identifier , number_literal ))) ;) (goto_statement "goto LAB_00099118;" goto statement_identifier ;) })) }) (else_clause "else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }" else (compound_statement "{\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }" { (expression_statement "iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);" (assignment_expression "iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1)" identifier = (call_expression "(*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1)" (parenthesized_expression "(*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))" ( (pointer_expression "*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24)" * (cast_expression "(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(local_70 + -0x7ef0) + -0x2c24)" ( (binary_expression "*(int *)(local_70 + -0x7ef0) + -0x2c24" (pointer_expression "*(int *)(local_70 + -0x7ef0)" * (cast_expression "(int *)(local_70 + -0x7ef0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + -0x7ef0)" ( (binary_expression "local_70 + -0x7ef0" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar6,iVar7,iVar8 + 1)" ( identifier , identifier , (binary_expression "iVar8 + 1" identifier + number_literal) )))) ;) (if_statement "if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }" { (expression_statement "local_64 = *(int **)(iVar8 + 8);" (assignment_expression "local_64 = *(int **)(iVar8 + 8)" identifier = (pointer_expression "*(int **)(iVar8 + 8)" * (cast_expression "(int **)(iVar8 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 8)" ( (binary_expression "iVar8 + 8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000990f4;" goto statement_identifier ;) })) (expression_statement "local_64 = (int *)0x0;" (assignment_expression "local_64 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar8 = *(int *)(local_70 + -0x7fb4);" (assignment_expression "iVar8 = *(int *)(local_70 + -0x7fb4)" identifier = (pointer_expression "*(int *)(local_70 + -0x7fb4)" * (cast_expression "(int *)(local_70 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + -0x7fb4)" ( (binary_expression "local_70 + -0x7fb4" identifier + number_literal) ))))) ;) }))) (expression_statement "param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);" (assignment_expression "param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7)" identifier = (cast_expression "(int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "sqlite3_mprintf(iVar8 + -0x7478,iVar7)" identifier (argument_list "(iVar8 + -0x7478,iVar7)" ( (binary_expression "iVar8 + -0x7478" identifier + number_literal) , identifier ))))) ;) (expression_statement "ppiVar17 = param_3;" (assignment_expression "ppiVar17 = param_3" identifier = identifier) ;) (expression_statement "(**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7e40))" ( (pointer_expression "**(code **)(local_70 + -0x7e40)" * (pointer_expression "*(code **)(local_70 + -0x7e40)" * (cast_expression "(code **)(local_70 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7e40)" ( (binary_expression "local_70 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(ppiVar14,param_3,0xffffffff)" ( identifier , identifier , number_literal ))) ;) (expression_statement "ppiVar5 = param_3;" (assignment_expression "ppiVar5 = param_3" identifier = identifier) ;) (expression_statement "(**(code **)(local_70 + -0x7f90))();" (call_expression "(**(code **)(local_70 + -0x7f90))()" (parenthesized_expression "(**(code **)(local_70 + -0x7f90))" ( (pointer_expression "**(code **)(local_70 + -0x7f90)" * (pointer_expression "*(code **)(local_70 + -0x7f90)" * (cast_expression "(code **)(local_70 + -0x7f90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7f90)" ( (binary_expression "local_70 + -0x7f90" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) }))) (labeled_statement "LAB_00099118:\n  if (local_5c == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }" statement_identifier : (if_statement "if (local_5c == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }" if (parenthesized_expression "(local_5c == (byte **)*piVar24)" ( (binary_expression "local_5c == (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 "pcVar28 = *(code **)(local_70 + -0x7ba0);" (assignment_expression "pcVar28 = *(code **)(local_70 + -0x7ba0)" identifier = (pointer_expression "*(code **)(local_70 + -0x7ba0)" * (cast_expression "(code **)(local_70 + -0x7ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_70 + -0x7ba0)" ( (binary_expression "local_70 + -0x7ba0" identifier + number_literal) ))))) ;) (expression_statement "uVar6 = 0x992a0;" (assignment_expression "uVar6 = 0x992a0" identifier = number_literal) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "local_8c = ppiVar14;" (assignment_expression "local_8c = ppiVar14" identifier = identifier) ;) (expression_statement "local_94 = piVar24;" (assignment_expression "local_94 = piVar24" identifier = identifier) ;) (expression_statement "local_90 = iVar7;" (assignment_expression "local_90 = iVar7" identifier = identifier) ;) (expression_statement "piVar24 = &local_c8;" (assignment_expression "piVar24 = &local_c8" identifier = (pointer_expression "&local_c8" & identifier)) ;) (expression_statement "local_d0 = pcVar28 + 0xca310;" (assignment_expression "local_d0 = pcVar28 + 0xca310" identifier = (binary_expression "pcVar28 + 0xca310" identifier + number_literal)) ;) (expression_statement "local_84 = uVar6;" (assignment_expression "local_84 = uVar6" identifier = identifier) ;) (expression_statement "local_88 = ppiVar16;" (assignment_expression "local_88 = ppiVar16" identifier = identifier) ;) (expression_statement "local_98 = param_3;" (assignment_expression "local_98 = param_3" identifier = identifier) ;) (expression_statement "piVar26 = *(int **)(pcVar28 + 0xc278c);" (assignment_expression "piVar26 = *(int **)(pcVar28 + 0xc278c)" identifier = (pointer_expression "*(int **)(pcVar28 + 0xc278c)" * (cast_expression "(int **)(pcVar28 + 0xc278c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc278c)" ( (binary_expression "pcVar28 + 0xc278c" identifier + number_literal) ))))) ;) (expression_statement "piVar20 = *ppiVar17;" (assignment_expression "piVar20 = *ppiVar17" identifier = (pointer_expression "*ppiVar17" * identifier)) ;) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" identifier = number_literal) ;) (expression_statement "local_c4 = 0;" (assignment_expression "local_c4 = 0" identifier = number_literal) ;) (expression_statement "local_c0 = 0;" (assignment_expression "local_c0 = 0" identifier = number_literal) ;) (expression_statement "local_bc = 0;" (assignment_expression "local_bc = 0" identifier = number_literal) ;) (expression_statement "local_b8 = 0;" (assignment_expression "local_b8 = 0" identifier = number_literal) ;) (expression_statement "local_b4 = 0;" (assignment_expression "local_b4 = 0" identifier = number_literal) ;) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) (expression_statement "local_ac = 0;" (assignment_expression "local_ac = 0" identifier = number_literal) ;) (expression_statement "local_a8 = 0;" (assignment_expression "local_a8 = 0" identifier = number_literal) ;) (expression_statement "local_a4 = 0;" (assignment_expression "local_a4 = 0" identifier = number_literal) ;) (expression_statement "local_a0 = 0;" (assignment_expression "local_a0 = 0" identifier = number_literal) ;) (expression_statement "local_9c = *piVar26;" (assignment_expression "local_9c = *piVar26" identifier = (pointer_expression "*piVar26" * identifier)) ;) (expression_statement "pbVar19 = (byte *)((int)piVar20 * 2);" (assignment_expression "pbVar19 = (byte *)((int)piVar20 * 2)" identifier = (cast_expression "(byte *)((int)piVar20 * 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar20 * 2)" ( (binary_expression "(int)piVar20 * 2" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (if_statement "if ((int)piVar20 < 1) {\n    uVar23 = 0;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099480:\n    piVar24 = ppiVar5[0xc];\n    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));\n    piVar11 = piVar13;\n    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));\n    if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }\n    piVar24 = piVar20;\n    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);\n    ppbVar12 = (byte **)0x0;\n    ppiVar17[0xc] = piVar11;\n    ppiVar17[0xd] = piVar20;\n    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }" if (parenthesized_expression "((int)piVar20 < 1)" ( (binary_expression "(int)piVar20 < 1" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n    uVar23 = 0;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099480:\n    piVar24 = ppiVar5[0xc];\n    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));\n    piVar11 = piVar13;\n    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));\n    if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }\n    piVar24 = piVar20;\n    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);\n    ppbVar12 = (byte **)0x0;\n    ppiVar17[0xc] = piVar11;\n    ppiVar17[0xd] = piVar20;\n    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);\n  }" { (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" identifier = number_literal) ;) (expression_statement "ppiVar17[5] = (int *)0x2;" (assignment_expression "ppiVar17[5] = (int *)0x2" (subscript_expression "ppiVar17[5]" identifier [ number_literal ]) = (cast_expression "(int *)0x2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar17[7] = (int *)0x1;" (assignment_expression "ppiVar17[7] = (int *)0x1" (subscript_expression "ppiVar17[7]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00099480:\n    piVar24 = ppiVar5[0xc];" statement_identifier : (expression_statement "piVar24 = ppiVar5[0xc];" (assignment_expression "piVar24 = ppiVar5[0xc]" identifier = (subscript_expression "ppiVar5[0xc]" identifier [ number_literal ])) ;)) (expression_statement "piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));" (assignment_expression "piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f))" identifier = (cast_expression "(int *)((int)piVar24 >> (uVar23 & 0x1f))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar24 >> (uVar23 & 0x1f))" ( (binary_expression "(int)piVar24 >> (uVar23 & 0x1f)" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) >> (parenthesized_expression "(uVar23 & 0x1f)" ( (binary_expression "uVar23 & 0x1f" identifier & number_literal) ))) )))) ;) (expression_statement "piVar11 = piVar13;" (assignment_expression "piVar11 = piVar13" identifier = identifier) ;) (expression_statement "piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));" (assignment_expression "piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f))" identifier = (cast_expression "(int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f))" ( (binary_expression "((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f)" (binary_expression "((int)piVar24 << 1) << (~uVar23 & 0x1f)" (parenthesized_expression "((int)piVar24 << 1)" ( (binary_expression "(int)piVar24 << 1" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) )) << (parenthesized_expression "(~uVar23 & 0x1f)" ( (binary_expression "~uVar23 & 0x1f" (unary_expression "~uVar23" ~ identifier) & number_literal) ))) | (binary_expression "(uint)ppiVar5[0xd] >> (uVar23 & 0x1f)" (cast_expression "(uint)ppiVar5[0xd]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "ppiVar5[0xd]" identifier [ number_literal ])) >> (parenthesized_expression "(uVar23 & 0x1f)" ( (binary_expression "uVar23 & 0x1f" identifier & number_literal) )))) )))) ;) (if_statement "if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }" if (parenthesized_expression "((uVar23 & 0x20) != 0)" ( (binary_expression "(uVar23 & 0x20) != 0" (parenthesized_expression "(uVar23 & 0x20)" ( (binary_expression "uVar23 & 0x20" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }" { (expression_statement "piVar11 = (int *)((int)piVar24 >> 0x1f);" (assignment_expression "piVar11 = (int *)((int)piVar24 >> 0x1f)" identifier = (cast_expression "(int *)((int)piVar24 >> 0x1f)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar24 >> 0x1f)" ( (binary_expression "(int)piVar24 >> 0x1f" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )))) ;) (expression_statement "piVar20 = piVar13;" (assignment_expression "piVar20 = piVar13" identifier = identifier) ;) })) (expression_statement "piVar24 = piVar20;" (assignment_expression "piVar24 = piVar20" identifier = identifier) ;) (expression_statement "dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);" (assignment_expression "dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11)" identifier = (cast_expression "(double)(**(code **)(local_d0 + -0x7f18))(piVar11)" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(local_d0 + -0x7f18))(piVar11)" (parenthesized_expression "(**(code **)(local_d0 + -0x7f18))" ( (pointer_expression "**(code **)(local_d0 + -0x7f18)" * (pointer_expression "*(code **)(local_d0 + -0x7f18)" * (cast_expression "(code **)(local_d0 + -0x7f18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_d0 + -0x7f18)" ( (binary_expression "local_d0 + -0x7f18" identifier + number_literal) ))))) )) (argument_list "(piVar11)" ( identifier ))))) ;) (expression_statement "ppbVar12 = (byte **)0x0;" (assignment_expression "ppbVar12 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "ppiVar17[0xc] = piVar11;" (assignment_expression "ppiVar17[0xc] = piVar11" (subscript_expression "ppiVar17[0xc]" identifier [ number_literal ]) = identifier) ;) (expression_statement "ppiVar17[0xd] = piVar20;" (assignment_expression "ppiVar17[0xd] = piVar20" (subscript_expression "ppiVar17[0xd]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);" (assignment_expression "*(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780)" (pointer_expression "*(double *)(ppiVar17 + 10)" * (cast_expression "(double *)(ppiVar17 + 10)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppiVar17 + 10)" ( (binary_expression "ppiVar17 + 10" identifier + number_literal) )))) = (binary_expression "dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780)" identifier * (pointer_expression "*(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780)" * (cast_expression "(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(local_d0 + -0x7f1c) + -0x7780)" ( (binary_expression "*(int *)(local_d0 + -0x7f1c) + -0x7780" (pointer_expression "*(int *)(local_d0 + -0x7f1c)" * (cast_expression "(int *)(local_d0 + -0x7f1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_d0 + -0x7f1c)" ( (binary_expression "local_d0 + -0x7f1c" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }" else (compound_statement "{\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }" { (expression_statement "piVar13 = ppiVar17[1];" (assignment_expression "piVar13 = ppiVar17[1]" identifier = (subscript_expression "ppiVar17[1]" identifier [ number_literal ])) ;) (expression_statement "bVar2 = false;" (assignment_expression "bVar2 = false" identifier = false) ;) (expression_statement "piVar11 = piVar13;" (assignment_expression "piVar11 = piVar13" identifier = identifier) ;) (do_statement "do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);" do (compound_statement "{\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    }" { (expression_statement "piVar1 = piVar11 + 1;" (assignment_expression "piVar1 = piVar11 + 1" identifier = (binary_expression "piVar11 + 1" identifier + number_literal)) ;) (expression_statement "piVar11 = piVar11 + 3;" (assignment_expression "piVar11 = piVar11 + 3" identifier = (binary_expression "piVar11 + 3" identifier + number_literal)) ;) (if_statement "if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }" if (parenthesized_expression "(*(char *)piVar1 == '@')" ( (binary_expression "*(char *)piVar1 == '@'" (pointer_expression "*(char *)piVar1" * (cast_expression "(char *)piVar1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'@'" ' character ')) )) (compound_statement "{\n        bVar2 = true;\n      }" { (expression_statement "bVar2 = true;" (assignment_expression "bVar2 = true" identifier = true) ;) })) }) while (parenthesized_expression "(piVar13 + (int)piVar20 * 3 != piVar11)" ( (binary_expression "piVar13 + (int)piVar20 * 3 != piVar11" (binary_expression "piVar13 + (int)piVar20 * 3" identifier + (binary_expression "(int)piVar20 * 3" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) != identifier) )) ;) (expression_statement "param_4 = (int *)0x0;" (assignment_expression "param_4 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar22 = 0;" (assignment_expression "uVar22 = 0" identifier = number_literal) ;) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);" statement_identifier : (expression_statement "piVar13 = (int *)((int)piVar13 + (int)param_4);" (assignment_expression "piVar13 = (int *)((int)piVar13 + (int)param_4)" identifier = (cast_expression "(int *)((int)piVar13 + (int)param_4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar13 + (int)param_4)" ( (binary_expression "(int)piVar13 + (int)param_4" (cast_expression "(int)piVar13" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)param_4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;)) (if_statement "if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }" if (parenthesized_expression "(!bVar2)" ( (unary_expression "!bVar2" ! identifier) )) (compound_statement "{\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }" { (if_statement "if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;" if (parenthesized_expression "(*(char *)((int)piVar13 + 5) == '\0')" ( (binary_expression "*(char *)((int)piVar13 + 5) == '\0'" (pointer_expression "*(char *)((int)piVar13 + 5)" * (cast_expression "(char *)((int)piVar13 + 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar13 + 5)" ( (binary_expression "(int)piVar13 + 5" (cast_expression "(int)piVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) (expression_statement "iVar8 = *piVar13;" (assignment_expression "iVar8 = *piVar13" identifier = (pointer_expression "*piVar13" * identifier)) ;) (expression_statement "bVar15 = *(byte *)(piVar13 + 1);" (assignment_expression "bVar15 = *(byte *)(piVar13 + 1)" identifier = (pointer_expression "*(byte *)(piVar13 + 1)" * (cast_expression "(byte *)(piVar13 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13 + 1)" ( (binary_expression "piVar13 + 1" identifier + number_literal) ))))) ;) (if_statement "if (iVar8 != 0) goto LAB_000993d8;" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000993d8;" goto statement_identifier ;)) (if_statement "if (bVar15 != 2) goto LAB_00099394;" if (parenthesized_expression "(bVar15 != 2)" ( (binary_expression "bVar15 != 2" identifier != number_literal) )) (goto_statement "goto LAB_00099394;" goto statement_identifier ;)) (if_statement "if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (compound_statement "{\n        iVar8 = 0;\n      }" { (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" identifier = number_literal) ;) }) (else_clause "else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }" else (compound_statement "{\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }" { (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) (do_statement "do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);" do (compound_statement "{\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        }" { (expression_statement "iVar8 = iVar10 + 1;" (assignment_expression "iVar8 = iVar10 + 1" identifier = (binary_expression "iVar10 + 1" identifier + number_literal)) ;) (expression_statement "ppiVar17[4][iVar10 * 2] = 0;" (assignment_expression "ppiVar17[4][iVar10 * 2] = 0" (subscript_expression "ppiVar17[4][iVar10 * 2]" (subscript_expression "ppiVar17[4]" identifier [ number_literal ]) [ (binary_expression "iVar10 * 2" identifier * number_literal) ]) = number_literal) ;) (expression_statement "*(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;" (assignment_expression "*(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0" (pointer_expression "*(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1)" * (cast_expression "(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppiVar17[4] + iVar10 * 2 + 1)" ( (binary_expression "ppiVar17[4] + iVar10 * 2 + 1" (binary_expression "ppiVar17[4] + iVar10 * 2" (subscript_expression "ppiVar17[4]" identifier [ number_literal ]) + (binary_expression "iVar10 * 2" identifier * number_literal)) + number_literal) )))) = number_literal) ;) (expression_statement "iVar10 = iVar8;" (assignment_expression "iVar10 = iVar8" identifier = identifier) ;) }) while (parenthesized_expression "(iVar8 != iVar7)" ( (binary_expression "iVar8 != iVar7" identifier != identifier) )) ;) (expression_statement "iVar8 = iVar8 * 8;" (assignment_expression "iVar8 = iVar8 * 8" identifier = (binary_expression "iVar8 * 8" identifier * number_literal)) ;) }))) (expression_statement "param_4 = (int *)0x1;" (assignment_expression "param_4 = (int *)0x1" identifier = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar17[5] = (int *)0x1;" (assignment_expression "ppiVar17[5] = (int *)0x1" (subscript_expression "ppiVar17[5]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "piVar24 = *(int **)(pcVar28 + 0xc23f4);" (assignment_expression "piVar24 = *(int **)(pcVar28 + 0xc23f4)" identifier = (pointer_expression "*(int **)(pcVar28 + 0xc23f4)" * (cast_expression "(int **)(pcVar28 + 0xc23f4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc23f4)" ( (binary_expression "pcVar28 + 0xc23f4" identifier + number_literal) ))))) ;) (expression_statement "uVar30 = *(undefined8 *)(piVar24 + -0x1de2);" (assignment_expression "uVar30 = *(undefined8 *)(piVar24 + -0x1de2)" identifier = (pointer_expression "*(undefined8 *)(piVar24 + -0x1de2)" * (cast_expression "(undefined8 *)(piVar24 + -0x1de2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar24 + -0x1de2)" ( (binary_expression "piVar24 + -0x1de2" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;" (assignment_expression "*(undefined4 *)((int)ppiVar17[4] + iVar8) = 1" (pointer_expression "*(undefined4 *)((int)ppiVar17[4] + iVar8)" * (cast_expression "(undefined4 *)((int)ppiVar17[4] + iVar8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppiVar17[4] + iVar8)" ( (binary_expression "(int)ppiVar17[4] + iVar8" (cast_expression "(int)ppiVar17[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "ppiVar17[4]" identifier [ number_literal ])) + identifier) )))) = number_literal) ;) (expression_statement "pbVar19 = (byte *)0x0;" (assignment_expression "pbVar19 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "*(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;" (assignment_expression "*(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1" (pointer_expression "*(undefined1 *)((int)ppiVar17[4] + iVar8 + 4)" * (cast_expression "(undefined1 *)((int)ppiVar17[4] + iVar8 + 4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppiVar17[4] + iVar8 + 4)" ( (binary_expression "(int)ppiVar17[4] + iVar8 + 4" (binary_expression "(int)ppiVar17[4] + iVar8" (cast_expression "(int)ppiVar17[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "ppiVar17[4]" identifier [ number_literal ])) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)(ppiVar17 + 10) = uVar30;" (assignment_expression "*(undefined8 *)(ppiVar17 + 10) = uVar30" (pointer_expression "*(undefined8 *)(ppiVar17 + 10)" * (cast_expression "(undefined8 *)(ppiVar17 + 10)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppiVar17 + 10)" ( (binary_expression "ppiVar17 + 10" identifier + number_literal) )))) = identifier) ;) (expression_statement "ppiVar17[0xd] = (int *)0x1;" (assignment_expression "ppiVar17[0xd] = (int *)0x1" (subscript_expression "ppiVar17[0xd]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar17[0xc] = (int *)0x0;" (assignment_expression "ppiVar17[0xc] = (int *)0x0" (subscript_expression "ppiVar17[0xc]" identifier [ number_literal ]) = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar17[0xe] = (int *)0x1;" (assignment_expression "ppiVar17[0xe] = (int *)0x1" (subscript_expression "ppiVar17[0xe]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppbVar12 = (byte **)0x0;" (assignment_expression "ppbVar12 = (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)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }" if (parenthesized_expression "(*(char *)((int)piVar13 + 5) == '\0')" ( (binary_expression "*(char *)((int)piVar13 + 5) == '\0'" (pointer_expression "*(char *)((int)piVar13 + 5)" * (cast_expression "(char *)((int)piVar13 + 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar13 + 5)" ( (binary_expression "(int)piVar13 + 5" (cast_expression "(int)piVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }" { (labeled_statement "LAB_0009939c:\n      uVar23 = uVar22;" statement_identifier : (expression_statement "uVar23 = uVar22;" (assignment_expression "uVar23 = uVar22" identifier = identifier) ;)) (if_statement "if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;" if (parenthesized_expression "((int)piVar20 <= iVar7 + 1)" ( (binary_expression "(int)piVar20 <= iVar7 + 1" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) <= (binary_expression "iVar7 + 1" identifier + number_literal)) )) (goto_statement "goto LAB_00099470;" goto statement_identifier ;)) }) (else_clause "else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }" else (compound_statement "{\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }" { (expression_statement "iVar8 = *piVar13;" (assignment_expression "iVar8 = *piVar13" identifier = (pointer_expression "*piVar13" * identifier)) ;) (expression_statement "bVar15 = *(byte *)(piVar13 + 1);" (assignment_expression "bVar15 = *(byte *)(piVar13 + 1)" identifier = (pointer_expression "*(byte *)(piVar13 + 1)" * (cast_expression "(byte *)(piVar13 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar13 + 1)" ( (binary_expression "piVar13 + 1" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" statement_identifier : (if_statement "if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" if (parenthesized_expression "((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8))" ( (binary_expression "(iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)" (parenthesized_expression "(iVar8 < 1)" ( (binary_expression "iVar8 < 1" identifier < number_literal) )) || (parenthesized_expression "((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)" ( (binary_expression "(int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8" (binary_expression "(int)(uint)*(byte *)((int)ppiVar5 + 0x15)" (cast_expression "(int)(uint)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(uint)" ( identifier ))) * (cast_expression "(byte *)((int)ppiVar5 + 0x15)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppiVar5 + 0x15)" ( (binary_expression "(int)ppiVar5 + 0x15" (cast_expression "(int)ppiVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) ))) )) (compound_statement "{\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }" { (labeled_statement "LAB_00099394:\n        uVar21 = 0x46;" statement_identifier : (expression_statement "uVar21 = 0x46;" (assignment_expression "uVar21 = 0x46" identifier = number_literal) ;)) (if_statement "if (bVar15 != 0x40) goto LAB_0009939c;" if (parenthesized_expression "(bVar15 != 0x40)" ( (binary_expression "bVar15 != 0x40" identifier != number_literal) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) }) (else_clause "else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" else (if_statement "if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" if (parenthesized_expression "(bVar15 == 8)" ( (binary_expression "bVar15 == 8" identifier == number_literal) )) (compound_statement "{\n        uVar21 = 0x42;\n      }" { (expression_statement "uVar21 = 0x42;" (assignment_expression "uVar21 = 0x42" identifier = number_literal) ;) }) (else_clause "else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" else (if_statement "if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" if (parenthesized_expression "(bVar15 < 9)" ( (binary_expression "bVar15 < 9" identifier < number_literal) )) (compound_statement "{\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }" { (expression_statement "uVar21 = 0x41;" (assignment_expression "uVar21 = 0x41" identifier = number_literal) ;) (if_statement "if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;" if (parenthesized_expression "((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4))" ( (binary_expression "(bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)" (parenthesized_expression "(bVar15 != 2)" ( (binary_expression "bVar15 != 2" identifier != number_literal) )) && (parenthesized_expression "(uVar21 = 0x45, bVar15 != 4)" ( (comma_expression "uVar21 = 0x45, bVar15 != 4" (assignment_expression "uVar21 = 0x45" identifier = number_literal) , (binary_expression "bVar15 != 4" identifier != number_literal)) ))) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) }) (else_clause "else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" else (compound_statement "{\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" { (expression_statement "uVar21 = 0x44;" (assignment_expression "uVar21 = 0x44" identifier = number_literal) ;) (if_statement "if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;" if (parenthesized_expression "((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           )" ( (binary_expression "(bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))" (parenthesized_expression "(bVar15 != 0x20)" ( (binary_expression "bVar15 != 0x20" identifier != number_literal) )) && (parenthesized_expression "((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))" ( (parenthesized_expression "(uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10))" ( (comma_expression "uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)" (assignment_expression "uVar21 = 0x46" identifier = number_literal) , (binary_expression "bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)" (binary_expression "bVar15 != 0x40" identifier != number_literal) && (parenthesized_expression "(uVar21 = 0x43, bVar15 != 0x10)" ( (comma_expression "uVar21 = 0x43, bVar15 != 0x10" (assignment_expression "uVar21 = 0x43" identifier = number_literal) , (binary_expression "bVar15 != 0x10" identifier != number_literal)) )))) )) ))) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) })))))))) (expression_statement "piVar20 = ppiVar17[4];" (assignment_expression "piVar20 = ppiVar17[4]" identifier = (subscript_expression "ppiVar17[4]" identifier [ number_literal ])) ;) (expression_statement "uVar23 = uVar22 + 2;" (assignment_expression "uVar23 = uVar22 + 2" identifier = (binary_expression "uVar22 + 2" identifier + number_literal)) ;) (expression_statement "*(undefined1 *)((int)&local_c8 + uVar22) = uVar21;" (assignment_expression "*(undefined1 *)((int)&local_c8 + uVar22) = uVar21" (pointer_expression "*(undefined1 *)((int)&local_c8 + uVar22)" * (cast_expression "(undefined1 *)((int)&local_c8 + uVar22)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_c8 + uVar22)" ( (binary_expression "(int)&local_c8 + uVar22" (cast_expression "(int)&local_c8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_c8" & identifier)) + identifier) )))) = identifier) ;) (expression_statement "*(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';" (assignment_expression "*(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/'" (pointer_expression "*(char *)((int)&local_c8 + uVar22 + 1)" * (cast_expression "(char *)((int)&local_c8 + uVar22 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_c8 + uVar22 + 1)" ( (binary_expression "(int)&local_c8 + uVar22 + 1" (binary_expression "(int)&local_c8 + uVar22" (cast_expression "(int)&local_c8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_c8" & identifier)) + identifier) + number_literal) )))) = (binary_expression "(char)*piVar13 + '/'" (cast_expression "(char)*piVar13" ( (type_descriptor "char" primitive_type) ) (pointer_expression "*piVar13" * identifier)) + (char_literal "'/'" ' character '))) ;) (expression_statement "piVar20[iVar7 * 2] = (int)uVar23 >> 1;" (assignment_expression "piVar20[iVar7 * 2] = (int)uVar23 >> 1" (subscript_expression "piVar20[iVar7 * 2]" identifier [ (binary_expression "iVar7 * 2" identifier * number_literal) ]) = (binary_expression "(int)uVar23 >> 1" (cast_expression "(int)uVar23" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (expression_statement "*(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;" (assignment_expression "*(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1" (pointer_expression "*(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1)" * (cast_expression "(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppiVar17[4] + iVar7 * 2 + 1)" ( (binary_expression "ppiVar17[4] + iVar7 * 2 + 1" (binary_expression "ppiVar17[4] + iVar7 * 2" (subscript_expression "ppiVar17[4]" identifier [ number_literal ]) + (binary_expression "iVar7 * 2" identifier * number_literal)) + number_literal) )))) = number_literal) ;) (expression_statement "piVar20 = *ppiVar17;" (assignment_expression "piVar20 = *ppiVar17" identifier = (pointer_expression "*ppiVar17" * identifier)) ;) (expression_statement "uVar22 = uVar23;" (assignment_expression "uVar22 = uVar23" identifier = identifier) ;) (if_statement "if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }" if (parenthesized_expression "((int)piVar20 <= iVar7 + 1)" ( (binary_expression "(int)piVar20 <= iVar7 + 1" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) <= (binary_expression "iVar7 + 1" identifier + number_literal)) )) (compound_statement "{\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }" { (labeled_statement "LAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);" statement_identifier : (expression_statement "pbVar19 = (byte *)(iVar7 + 1);" (assignment_expression "pbVar19 = (byte *)(iVar7 + 1)" identifier = (cast_expression "(byte *)(iVar7 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 1)" ( (binary_expression "iVar7 + 1" identifier + number_literal) )))) ;)) (expression_statement "ppiVar17[5] = (int *)0x2;" (assignment_expression "ppiVar17[5] = (int *)0x2" (subscript_expression "ppiVar17[5]" identifier [ number_literal ]) = (cast_expression "(int *)0x2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar17[7] = (int *)0x1;" (assignment_expression "ppiVar17[7] = (int *)0x1" (subscript_expression "ppiVar17[7]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar22 = uVar23;" (assignment_expression "uVar22 = uVar23" identifier = identifier) ;) (if_statement "if (uVar23 != 0) goto LAB_00099544;" if (parenthesized_expression "(uVar23 != 0)" ( (binary_expression "uVar23 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00099544;" goto statement_identifier ;)) (goto_statement "goto LAB_00099480;" goto statement_identifier ;) })) }))) (expression_statement "param_4 = param_4 + 3;" (assignment_expression "param_4 = param_4 + 3" identifier = (binary_expression "param_4 + 3" identifier + number_literal)) ;) (if_statement "if ((int)uVar22 < 0x28) goto code_r0x000993b8;" if (parenthesized_expression "((int)uVar22 < 0x28)" ( (binary_expression "(int)uVar22 < 0x28" (cast_expression "(int)uVar22" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto code_r0x000993b8;" goto statement_identifier ;)) (expression_statement "ppiVar17[5] = (int *)0x2;" (assignment_expression "ppiVar17[5] = (int *)0x2" (subscript_expression "ppiVar17[5]" identifier [ number_literal ]) = (cast_expression "(int *)0x2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar17[7] = (int *)0x1;" (assignment_expression "ppiVar17[7] = (int *)0x1" (subscript_expression "ppiVar17[7]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);" statement_identifier : (expression_statement "pbVar19 = (byte *)(iVar7 + 1);" (assignment_expression "pbVar19 = (byte *)(iVar7 + 1)" identifier = (cast_expression "(byte *)(iVar7 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 1)" ( (binary_expression "iVar7 + 1" identifier + number_literal) )))) ;)) (expression_statement "piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);" (assignment_expression "piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4)" identifier = (cast_expression "(int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4)" identifier (argument_list "(*(int *)(pcVar28 + 0xc2348) + 0x71f4)" ( (binary_expression "*(int *)(pcVar28 + 0xc2348) + 0x71f4" (pointer_expression "*(int *)(pcVar28 + 0xc2348)" * (cast_expression "(int *)(pcVar28 + 0xc2348)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0xc2348)" ( (binary_expression "pcVar28 + 0xc2348" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "ppiVar17[6] = piVar20;" (assignment_expression "ppiVar17[6] = piVar20" (subscript_expression "ppiVar17[6]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }" if (parenthesized_expression "(piVar20 != (int *)0x0)" ( (binary_expression "piVar20 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }" { (expression_statement "uVar23 = (int)uVar22 >> 1;" (assignment_expression "uVar23 = (int)uVar22 >> 1" identifier = (binary_expression "(int)uVar22 >> 1" (cast_expression "(int)uVar22" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (goto_statement "goto LAB_00099480;" goto statement_identifier ;) })) (expression_statement "ppbVar12 = (byte **)&DAT_00000007;" (assignment_expression "ppbVar12 = (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 (local_9c == *piVar26) {\n    return ppbVar12;\n  }" statement_identifier : (if_statement "if (local_9c == *piVar26) {\n    return ppbVar12;\n  }" if (parenthesized_expression "(local_9c == *piVar26)" ( (binary_expression "local_9c == *piVar26" identifier == (pointer_expression "*piVar26" * identifier)) )) (compound_statement "{\n    return ppbVar12;\n  }" { (return_statement "return ppbVar12;" return identifier ;) }))) (expression_statement "pcVar28 = *(code **)(local_d0 + -0x7ba0);" (assignment_expression "pcVar28 = *(code **)(local_d0 + -0x7ba0)" identifier = (pointer_expression "*(code **)(local_d0 + -0x7ba0)" * (cast_expression "(code **)(local_d0 + -0x7ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_d0 + -0x7ba0)" ( (binary_expression "local_d0 + -0x7ba0" identifier + number_literal) ))))) ;) (expression_statement "iVar7 = local_9c;" (assignment_expression "iVar7 = local_9c" identifier = identifier) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "ppbVar4 = &pbStack_d8;" (assignment_expression "ppbVar4 = &pbStack_d8" identifier = (pointer_expression "&pbStack_d8" & identifier)) ;) (expression_statement "puVar25 = *(undefined4 **)(pcVar28 + 0xc2410);" (assignment_expression "puVar25 = *(undefined4 **)(pcVar28 + 0xc2410)" identifier = (pointer_expression "*(undefined4 **)(pcVar28 + 0xc2410)" * (cast_expression "(undefined4 **)(pcVar28 + 0xc2410)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc2410)" ( (binary_expression "pcVar28 + 0xc2410" identifier + number_literal) ))))) ;) (expression_statement "ppbVar18 = (byte **)*puVar25;" (assignment_expression "ppbVar18 = (byte **)*puVar25" identifier = (cast_expression "(byte **)*puVar25" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*puVar25" * identifier))) ;) (expression_statement "ppbVar12 = ppbVar18;" (assignment_expression "ppbVar12 = ppbVar18" identifier = identifier) ;) (expression_statement "pbStack_d8 = pbVar19;" (assignment_expression "pbStack_d8 = pbVar19" identifier = identifier) ;) (expression_statement "piStack_d4 = param_4;" (assignment_expression "piStack_d4 = param_4" identifier = identifier) ;) (if_statement "if ((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))) goto LAB_0009967c;" if (parenthesized_expression "((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30)))" ( (binary_expression "(*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))" (parenthesized_expression "(*(int *)(iVar7 + 0x28) != 0)" ( (binary_expression "*(int *)(iVar7 + 0x28) != 0" (pointer_expression "*(int *)(iVar7 + 0x28)" * (cast_expression "(int *)(iVar7 + 0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x28)" ( (binary_expression "iVar7 + 0x28" identifier + number_literal) )))) != number_literal) )) || (parenthesized_expression "(99 < *(int *)(iVar7 + 0x30))" ( (binary_expression "99 < *(int *)(iVar7 + 0x30)" number_literal < (pointer_expression "*(int *)(iVar7 + 0x30)" * (cast_expression "(int *)(iVar7 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x30)" ( (binary_expression "iVar7 + 0x30" identifier + number_literal) ))))) ))) )) (goto_statement "goto LAB_0009967c;" goto statement_identifier ;)) (expression_statement "piVar20 = (int *)sqlite3_vmprintf();" (assignment_expression "piVar20 = (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 (piVar20 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;\n  }\n  else {\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }" if (parenthesized_expression "(piVar20 == (int *)0x0)" ( (binary_expression "piVar20 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;\n  }" { (labeled_statement "LAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;" statement_identifier : (expression_statement "*(undefined4 *)(iVar7 + 0x28) = 7;" (assignment_expression "*(undefined4 *)(iVar7 + 0x28) = 7" (pointer_expression "*(undefined4 *)(iVar7 + 0x28)" * (cast_expression "(undefined4 *)(iVar7 + 0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x28)" ( (binary_expression "iVar7 + 0x28" identifier + number_literal) )))) = number_literal) ;)) }) (else_clause "else {\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }" else (compound_statement "{\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }" { (expression_statement "ppbVar4 = *(byte ***)(iVar7 + 0x2c);" (assignment_expression "ppbVar4 = *(byte ***)(iVar7 + 0x2c)" identifier = (pointer_expression "*(byte ***)(iVar7 + 0x2c)" * (cast_expression "(byte ***)(iVar7 + 0x2c)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(iVar7 + 0x2c)" ( (binary_expression "iVar7 + 0x2c" identifier + number_literal) ))))) ;) (if_statement "if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }" if (parenthesized_expression "(ppbVar4 == (byte **)0x0)" ( (binary_expression "ppbVar4 == (byte **)0x0" identifier == (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }" { (expression_statement "pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);" (assignment_expression "pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4)" identifier = (cast_expression "(byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4)" ( (binary_expression "*(int *)(pcVar28 + 0xc1fcc) + 0x53f4" (pointer_expression "*(int *)(pcVar28 + 0xc1fcc)" * (cast_expression "(int *)(pcVar28 + 0xc1fcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0xc1fcc)" ( (binary_expression "pcVar28 + 0xc1fcc" identifier + number_literal) )))) + number_literal) )))) ;) }) (else_clause "else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }" else (compound_statement "{\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }" { (expression_statement "pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);" (assignment_expression "pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48)" identifier = (cast_expression "(byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48)" ( (binary_expression "*(int *)(pcVar28 + 0xc1fcc) + 0x5c48" (pointer_expression "*(int *)(pcVar28 + 0xc1fcc)" * (cast_expression "(int *)(pcVar28 + 0xc1fcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0xc1fcc)" ( (binary_expression "pcVar28 + 0xc1fcc" identifier + number_literal) )))) + number_literal) )))) ;) }))) (expression_statement "piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);" (assignment_expression "piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c)" identifier = (cast_expression "(int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar28 + 0xc1fe0) - 0x741c)" ( (binary_expression "*(int *)(pcVar28 + 0xc1fe0) - 0x741c" (pointer_expression "*(int *)(pcVar28 + 0xc1fe0)" * (cast_expression "(int *)(pcVar28 + 0xc1fe0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0xc1fe0)" ( (binary_expression "pcVar28 + 0xc1fe0" identifier + number_literal) )))) - number_literal) )))) ;) (expression_statement "iVar8 = sqlite3_mprintf();" (assignment_expression "iVar8 = sqlite3_mprintf()" identifier = (call_expression "sqlite3_mprintf()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(int *)(iVar7 + 0x2c) = iVar8;" (assignment_expression "*(int *)(iVar7 + 0x2c) = iVar8" (pointer_expression "*(int *)(iVar7 + 0x2c)" * (cast_expression "(int *)(iVar7 + 0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x2c)" ( (binary_expression "iVar7 + 0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "param_4 = piVar20;" (assignment_expression "param_4 = piVar20" identifier = identifier) ;) (if_statement "if (iVar8 == 0) goto LAB_000996f0;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000996f0;" goto statement_identifier ;)) }))) (expression_statement "*(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1;" (assignment_expression "*(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1" (pointer_expression "*(int *)(iVar7 + 0x30)" * (cast_expression "(int *)(iVar7 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x30)" ( (binary_expression "iVar7 + 0x30" identifier + number_literal) )))) = (binary_expression "*(int *)(iVar7 + 0x30) + 1" (pointer_expression "*(int *)(iVar7 + 0x30)" * (cast_expression "(int *)(iVar7 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar7 + 0x30)" ( (binary_expression "iVar7 + 0x30" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "ppbVar12 = ppbVar4;" (assignment_expression "ppbVar12 = ppbVar4" identifier = identifier) ;) (labeled_statement "LAB_0009967c:\n  ppbVar4 = (byte **)*puVar25;" statement_identifier : (expression_statement "ppbVar4 = (byte **)*puVar25;" (assignment_expression "ppbVar4 = (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 (ppbVar18 == ppbVar4) {\n    return ppbVar4;\n  }" if (parenthesized_expression "(ppbVar18 == ppbVar4)" ( (binary_expression "ppbVar18 == ppbVar4" identifier == identifier) )) (compound_statement "{\n    return ppbVar4;\n  }" { (return_statement "return ppbVar4;" return identifier ;) })) (expression_statement "pcVar28 = *(code **)(pcVar28 + 0xc23f4);" (assignment_expression "pcVar28 = *(code **)(pcVar28 + 0xc23f4)" identifier = (pointer_expression "*(code **)(pcVar28 + 0xc23f4)" * (cast_expression "(code **)(pcVar28 + 0xc23f4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc23f4)" ( (binary_expression "pcVar28 + 0xc23f4" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "piVar20 = *(int **)(pcVar28 + 0xc231c);" (assignment_expression "piVar20 = *(int **)(pcVar28 + 0xc231c)" identifier = (pointer_expression "*(int **)(pcVar28 + 0xc231c)" * (cast_expression "(int **)(pcVar28 + 0xc231c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc231c)" ( (binary_expression "pcVar28 + 0xc231c" identifier + number_literal) ))))) ;) (expression_statement "ppbStack_128 = (byte **)0x0;" (assignment_expression "ppbStack_128 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "iVar7 = *piVar20;" (assignment_expression "iVar7 = *piVar20" identifier = (pointer_expression "*piVar20" * identifier)) ;) (expression_statement "ppbVar4 = (byte **)0x0;" (assignment_expression "ppbVar4 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (if_statement "if (ppbVar12 != (byte **)0x0) {\n    if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }\n  }" if (parenthesized_expression "(ppbVar12 != (byte **)0x0)" ( (binary_expression "ppbVar12 != (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 *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }\n  }" { (if_statement "if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }" if (parenthesized_expression "(*(char *)ppbVar12 == '$')" ( (binary_expression "*(char *)ppbVar12 == '$'" (pointer_expression "*(char *)ppbVar12" * (cast_expression "(char *)ppbVar12" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'$'" ' character ')) )) (compound_statement "{\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }" { (expression_statement "pbVar19 = (byte *)((int)ppbVar12 + 1);" (assignment_expression "pbVar19 = (byte *)((int)ppbVar12 + 1)" identifier = (cast_expression "(byte *)((int)ppbVar12 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppbVar12 + 1)" ( (binary_expression "(int)ppbVar12 + 1" (cast_expression "(int)ppbVar12" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "ppbVar4 = (byte **)FUN_0008b18c();" (assignment_expression "ppbVar4 = (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 "ppbVar12 = ppbStack_128;" (assignment_expression "ppbVar12 = ppbStack_128" identifier = identifier) ;) }) (else_clause "else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }" else (compound_statement "{\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }" { (expression_statement "iVar8 = *(int *)(pcVar28 + 0xc1eec);" (assignment_expression "iVar8 = *(int *)(pcVar28 + 0xc1eec)" identifier = (pointer_expression "*(int *)(pcVar28 + 0xc1eec)" * (cast_expression "(int *)(pcVar28 + 0xc1eec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0xc1eec)" ( (binary_expression "pcVar28 + 0xc1eec" identifier + number_literal) ))))) ;) (expression_statement "*(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';" (assignment_expression "*(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01'" (pointer_expression "*(char *)((int)piVar24 + 0x15)" * (cast_expression "(char *)((int)piVar24 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar24 + 0x15)" ( (binary_expression "(int)piVar24 + 0x15" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(char *)((int)piVar24 + 0x15) + '\x01'" (pointer_expression "*(char *)((int)piVar24 + 0x15)" * (cast_expression "(char *)((int)piVar24 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar24 + 0x15)" ( (binary_expression "(int)piVar24 + 0x15" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + (char_literal "'\x01'" ' escape_sequence '))) ;) (expression_statement "ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);" (assignment_expression "ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414)" identifier = (cast_expression "(byte **)sqlite3_mprintf(iVar8 + -0x7414)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "sqlite3_mprintf(iVar8 + -0x7414)" identifier (argument_list "(iVar8 + -0x7414)" ( (binary_expression "iVar8 + -0x7414" identifier + number_literal) ))))) ;) (if_statement "if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }" if (parenthesized_expression "(ppbVar4 == (byte **)0x0)" ( (binary_expression "ppbVar4 == (byte **)0x0" identifier == (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }" { (expression_statement "(**(code **)(pcVar28 + 0xc2074))(param_4);" (call_expression "(**(code **)(pcVar28 + 0xc2074))(param_4)" (parenthesized_expression "(**(code **)(pcVar28 + 0xc2074))" ( (pointer_expression "**(code **)(pcVar28 + 0xc2074)" * (pointer_expression "*(code **)(pcVar28 + 0xc2074)" * (cast_expression "(code **)(pcVar28 + 0xc2074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc2074)" ( (binary_expression "pcVar28 + 0xc2074" identifier + number_literal) ))))) )) (argument_list "(param_4)" ( identifier ))) ;) (expression_statement "ppbVar4 = (byte **)0x0;" (assignment_expression "ppbVar4 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) }) (else_clause "else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }" else (compound_statement "{\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }" { (expression_statement "pbVar19 = (byte *)0xffffffff;" (assignment_expression "pbVar19 = (byte *)0xffffffff" identifier = (cast_expression "(byte *)0xffffffff" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppbVar12 = ppbVar4;" (assignment_expression "ppbVar12 = ppbVar4" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar28 + 0xc2060))(param_4);" (call_expression "(**(code **)(pcVar28 + 0xc2060))(param_4)" (parenthesized_expression "(**(code **)(pcVar28 + 0xc2060))" ( (pointer_expression "**(code **)(pcVar28 + 0xc2060)" * (pointer_expression "*(code **)(pcVar28 + 0xc2060)" * (cast_expression "(code **)(pcVar28 + 0xc2060)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc2060)" ( (binary_expression "pcVar28 + 0xc2060" identifier + number_literal) ))))) )) (argument_list "(param_4)" ( identifier ))) ;) (expression_statement "(**(code **)(pcVar28 + 0xc1f10))(ppbVar4);" (call_expression "(**(code **)(pcVar28 + 0xc1f10))(ppbVar4)" (parenthesized_expression "(**(code **)(pcVar28 + 0xc1f10))" ( (pointer_expression "**(code **)(pcVar28 + 0xc1f10)" * (pointer_expression "*(code **)(pcVar28 + 0xc1f10)" * (cast_expression "(code **)(pcVar28 + 0xc1f10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc1f10)" ( (binary_expression "pcVar28 + 0xc1f10" identifier + number_literal) ))))) )) (argument_list "(ppbVar4)" ( identifier ))) ;) (expression_statement "ppbVar4 = (byte **)0x0;" (assignment_expression "ppbVar4 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) }))) }))) })) (if_statement "if (iVar7 == *piVar20) {\n    return ppbVar4;\n  }" if (parenthesized_expression "(iVar7 == *piVar20)" ( (binary_expression "iVar7 == *piVar20" identifier == (pointer_expression "*piVar20" * identifier)) )) (compound_statement "{\n    return ppbVar4;\n  }" { (return_statement "return ppbVar4;" return identifier ;) })) (expression_statement "pcVar28 = *(code **)(pcVar28 + 0xc2300);" (assignment_expression "pcVar28 = *(code **)(pcVar28 + 0xc2300)" identifier = (pointer_expression "*(code **)(pcVar28 + 0xc2300)" * (cast_expression "(code **)(pcVar28 + 0xc2300)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc2300)" ( (binary_expression "pcVar28 + 0xc2300" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "ppbVar4 = (byte **)FUN_0008ad48();" (assignment_expression "ppbVar4 = (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 (ppbVar4 != (byte **)0x0) {\n    if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }\n    if (ppbVar4 != (byte **)0x0) {\n                    \n                    \n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }\n  }" if (parenthesized_expression "(ppbVar4 != (byte **)0x0)" ( (binary_expression "ppbVar4 != (byte **)0x0" identifier != (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n    if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }\n    if (ppbVar4 != (byte **)0x0) {\n                    \n                    \n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }\n  }" { (if_statement "if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }" if (parenthesized_expression "(ppbVar12 == (byte **)&SUB_00000002)" ( (binary_expression "ppbVar12 == (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      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }" { (expression_statement "uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));" (assignment_expression "uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4))" identifier = (call_expression "(**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4))" (parenthesized_expression "(**(code **)(pcVar28 + 0xc1dd4))" ( (pointer_expression "**(code **)(pcVar28 + 0xc1dd4)" * (pointer_expression "*(code **)(pcVar28 + 0xc1dd4)" * (cast_expression "(code **)(pcVar28 + 0xc1dd4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc1dd4)" ( (binary_expression "pcVar28 + 0xc1dd4" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(pbVar19 + 4))" ( (pointer_expression "*(undefined4 *)(pbVar19 + 4)" * (cast_expression "(undefined4 *)(pbVar19 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar19 + 4)" ( (binary_expression "pbVar19 + 4" identifier + number_literal) )))) )))) ;) (expression_statement "ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);" (assignment_expression "ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7)" identifier = (cast_expression "(byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_00099710(ppbVar4,uVar6,0,iVar7)" identifier (argument_list "(ppbVar4,uVar6,0,iVar7)" ( identifier , identifier , number_literal , identifier ))))) ;) }) (else_clause "else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }" else (compound_statement "{\n      ppbVar4 = (byte **)ppbVar4[2];\n    }" { (expression_statement "ppbVar4 = (byte **)ppbVar4[2];" (assignment_expression "ppbVar4 = (byte **)ppbVar4[2]" identifier = (cast_expression "(byte **)ppbVar4[2]" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "ppbVar4[2]" identifier [ number_literal ]))) ;) }))) (if_statement "if (ppbVar4 != (byte **)0x0) {\n                    \n                    \n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }" if (parenthesized_expression "(ppbVar4 != (byte **)0x0)" ( (binary_expression "ppbVar4 != (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      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }" { (expression_statement "ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);" (assignment_expression "ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0)" identifier = (cast_expression "(byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0)" (parenthesized_expression "(**(code **)(pcVar28 + 0xc1e3c))" ( (pointer_expression "**(code **)(pcVar28 + 0xc1e3c)" * (pointer_expression "*(code **)(pcVar28 + 0xc1e3c)" * (cast_expression "(code **)(pcVar28 + 0xc1e3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0xc1e3c)" ( (binary_expression "pcVar28 + 0xc1e3c" identifier + number_literal) ))))) )) (argument_list "(iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0)" ( identifier , (pointer_expression "*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c)" * (cast_expression "(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c)" ( (binary_expression "(uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c" (binary_expression "(uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98)" (binary_expression "(uint)*(byte *)ppbVar4 * 4" (binary_expression "(uint)*(byte *)ppbVar4" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)ppbVar4" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) * number_literal) + (pointer_expression "*(int *)(pcVar28 + 0xc1d98)" * (cast_expression "(int *)(pcVar28 + 0xc1d98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0xc1d98)" ( (binary_expression "pcVar28 + 0xc1d98" identifier + number_literal) ))))) + number_literal) )))) , number_literal , number_literal ))))) ;) (return_statement "return ppbVar12;" return identifier ;) })) })) (return_statement "return ppbVar4;" return identifier ;) (labeled_statement "code_r0x000993b8:\n  piVar13 = ppiVar17[1];" statement_identifier : (expression_statement "piVar13 = ppiVar17[1];" (assignment_expression "piVar13 = ppiVar17[1]" identifier = (subscript_expression "ppiVar17[1]" identifier [ number_literal ])) ;)) (expression_statement "iVar7 = iVar7 + 1;" (assignment_expression "iVar7 = iVar7 + 1" identifier = (binary_expression "iVar7 + 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 (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 IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (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 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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (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 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)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 = 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 = (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 IDENT + LIT) ))))) ;) (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 ( 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 * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (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) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (return_statement return 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 = 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 *)) ) 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 = (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) ) (parenthesized_expression ( 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 { (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 = (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 ;) (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_00098f2c(int **param_1,int **param_2,int **param_3,int *param_4)\n\n{\n  int *piVar1;\n  bool bVar2;\n  undefined *puVar3;\n  byte **ppbVar4;\n  int **ppiVar5;\n  undefined4 uVar6;\n  int iVar7;\n  int iVar8;\n  undefined4 uVar9;\n  int iVar10;\n  int *piVar11;\n  byte **ppbVar12;\n  int *piVar13;\n  int **ppiVar14;\n  byte bVar15;\n  int **ppiVar16;\n  int **ppiVar17;\n  byte **ppbVar18;\n  byte *pbVar19;\n  int *piVar20;\n  undefined1 uVar21;\n  uint uVar22;\n  uint uVar23;\n  int **unaff_s1;\n  int *piVar24;\n  undefined4 *puVar25;\n  int **unaff_s2;\n  int **unaff_s3;\n  int *piVar26;\n  undefined *puVar27;\n  code *pcVar28;\n  double dVar29;\n  undefined8 uVar30;\n  int *local_resc;\n  byte **ppbStack_128;\n  byte *pbStack_d8;\n  int *piStack_d4;\n  code *local_d0;\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined1 local_a0;\n  int local_9c;\n  int **local_98;\n  int *local_94;\n  int local_90;\n  int **local_8c;\n  int **local_88;\n  undefined4 local_84;\n  undefined *local_70;\n  int *local_64;\n  int local_60;\n  byte **local_5c;\n  undefined *local_58;\n  int **local_54;\n  int **local_50;\n  int **local_4c;\n  \n  puVar3 = PTR___stack_chk_guard_0015ba2c;\n  ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c;\n  ppiVar14 = param_1;\n  ppiVar16 = param_2;\n  local_54 = unaff_s1;\n  local_4c = unaff_s3;\n  local_resc = param_4;\n  if (*param_1 == (int *)0x0) {\n    ppiVar16 = &local_resc;\n    ppiVar5 = (int **)sqlite3_vmprintf(param_3);\n    if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)();\n    *param_2 = (int *)unaff_s2;\n    local_54 = param_1;\n    local_4c = param_2;\n  }\n  ppbVar4 = *(byte ***)puVar3;\n  if (ppbVar12 == ppbVar4) {\n    return ppbVar4;\n  }\n  puVar27 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_70 = puVar27 + 0xca57c;\n  local_58 = puVar3;\n  piVar24 = *(int **)(puVar27 + 0xc29f8);\n  local_64 = (int *)0x0;\n  local_5c = (byte **)*piVar24;\n  local_50 = unaff_s2;\n  uVar6 = (**(code **)(puVar27 + 0xc2694))();\n  iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3);\n  iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3);\n  ppiVar5 = ppiVar14;\n  if (ppiVar16 == (int **)&SUB_00000002) {\n    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);\n    param_4 = &local_60;\n    local_60 = 0;\n    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);\n    if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n  }\n  else {\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }\nLAB_00099118:\n  if (local_5c == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }\n  pcVar28 = *(code **)(local_70 + -0x7ba0);\n  uVar6 = 0x992a0;\n  (*pcVar28)();\n  local_8c = ppiVar14;\n  local_94 = piVar24;\n  local_90 = iVar7;\n  piVar24 = &local_c8;\n  local_d0 = pcVar28 + 0xca310;\n  local_84 = uVar6;\n  local_88 = ppiVar16;\n  local_98 = param_3;\n  piVar26 = *(int **)(pcVar28 + 0xc278c);\n  piVar20 = *ppiVar17;\n  local_c8 = 0;\n  local_c4 = 0;\n  local_c0 = 0;\n  local_bc = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = *piVar26;\n  pbVar19 = (byte *)((int)piVar20 * 2);\n  if ((int)piVar20 < 1) {\n    uVar23 = 0;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099480:\n    piVar24 = ppiVar5[0xc];\n    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));\n    piVar11 = piVar13;\n    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));\n    if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }\n    piVar24 = piVar20;\n    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);\n    ppbVar12 = (byte **)0x0;\n    ppiVar17[0xc] = piVar11;\n    ppiVar17[0xd] = piVar20;\n    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }\nLAB_000994e0:\n  if (local_9c == *piVar26) {\n    return ppbVar12;\n  }\n  pcVar28 = *(code **)(local_d0 + -0x7ba0);\n  iVar7 = local_9c;\n  (*pcVar28)();\n  ppbVar4 = &pbStack_d8;\n  puVar25 = *(undefined4 **)(pcVar28 + 0xc2410);\n  ppbVar18 = (byte **)*puVar25;\n  ppbVar12 = ppbVar18;\n  pbStack_d8 = pbVar19;\n  piStack_d4 = param_4;\n  if ((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))) goto LAB_0009967c;\n  piVar20 = (int *)sqlite3_vmprintf();\n  if (piVar20 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;\n  }\n  else {\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }\n  *(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1;\n  ppbVar12 = ppbVar4;\nLAB_0009967c:\n  ppbVar4 = (byte **)*puVar25;\n  if (ppbVar18 == ppbVar4) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc23f4);\n  (*pcVar28)();\n  piVar20 = *(int **)(pcVar28 + 0xc231c);\n  ppbStack_128 = (byte **)0x0;\n  iVar7 = *piVar20;\n  ppbVar4 = (byte **)0x0;\n  if (ppbVar12 != (byte **)0x0) {\n    if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }\n  }\n  if (iVar7 == *piVar20) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc2300);\n  (*pcVar28)();\n  ppbVar4 = (byte **)FUN_0008ad48();\n  if (ppbVar4 != (byte **)0x0) {\n    if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }\n    if (ppbVar4 != (byte **)0x0) {\n                    \n                    \n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }\n  }\n  return ppbVar4;\ncode_r0x000993b8:\n  piVar13 = ppiVar17[1];\n  iVar7 = iVar7 + 1;\n  goto LAB_000993bc;\n}" (type_identifier "byte") (pointer_declarator "** FUN_00098f2c(int **param_1,int **param_2,int **param_3,int *param_4)" (* "*") (pointer_declarator "* FUN_00098f2c(int **param_1,int **param_2,int **param_3,int *param_4)" (* "*") (function_declarator "FUN_00098f2c(int **param_1,int **param_2,int **param_3,int *param_4)" (identifier "FUN_00098f2c") (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  int *piVar1;\n  bool bVar2;\n  undefined *puVar3;\n  byte **ppbVar4;\n  int **ppiVar5;\n  undefined4 uVar6;\n  int iVar7;\n  int iVar8;\n  undefined4 uVar9;\n  int iVar10;\n  int *piVar11;\n  byte **ppbVar12;\n  int *piVar13;\n  int **ppiVar14;\n  byte bVar15;\n  int **ppiVar16;\n  int **ppiVar17;\n  byte **ppbVar18;\n  byte *pbVar19;\n  int *piVar20;\n  undefined1 uVar21;\n  uint uVar22;\n  uint uVar23;\n  int **unaff_s1;\n  int *piVar24;\n  undefined4 *puVar25;\n  int **unaff_s2;\n  int **unaff_s3;\n  int *piVar26;\n  undefined *puVar27;\n  code *pcVar28;\n  double dVar29;\n  undefined8 uVar30;\n  int *local_resc;\n  byte **ppbStack_128;\n  byte *pbStack_d8;\n  int *piStack_d4;\n  code *local_d0;\n  undefined4 local_c8;\n  undefined4 local_c4;\n  undefined4 local_c0;\n  undefined4 local_bc;\n  undefined4 local_b8;\n  undefined4 local_b4;\n  undefined4 local_b0;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined1 local_a0;\n  int local_9c;\n  int **local_98;\n  int *local_94;\n  int local_90;\n  int **local_8c;\n  int **local_88;\n  undefined4 local_84;\n  undefined *local_70;\n  int *local_64;\n  int local_60;\n  byte **local_5c;\n  undefined *local_58;\n  int **local_54;\n  int **local_50;\n  int **local_4c;\n  \n  puVar3 = PTR___stack_chk_guard_0015ba2c;\n  ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c;\n  ppiVar14 = param_1;\n  ppiVar16 = param_2;\n  local_54 = unaff_s1;\n  local_4c = unaff_s3;\n  local_resc = param_4;\n  if (*param_1 == (int *)0x0) {\n    ppiVar16 = &local_resc;\n    ppiVar5 = (int **)sqlite3_vmprintf(param_3);\n    if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)();\n    *param_2 = (int *)unaff_s2;\n    local_54 = param_1;\n    local_4c = param_2;\n  }\n  ppbVar4 = *(byte ***)puVar3;\n  if (ppbVar12 == ppbVar4) {\n    return ppbVar4;\n  }\n  puVar27 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_70 = puVar27 + 0xca57c;\n  local_58 = puVar3;\n  piVar24 = *(int **)(puVar27 + 0xc29f8);\n  local_64 = (int *)0x0;\n  local_5c = (byte **)*piVar24;\n  local_50 = unaff_s2;\n  uVar6 = (**(code **)(puVar27 + 0xc2694))();\n  iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3);\n  iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3);\n  ppiVar5 = ppiVar14;\n  if (ppiVar16 == (int **)&SUB_00000002) {\n    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);\n    param_4 = &local_60;\n    local_60 = 0;\n    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);\n    if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n  }\n  else {\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }\nLAB_00099118:\n  if (local_5c == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }\n  pcVar28 = *(code **)(local_70 + -0x7ba0);\n  uVar6 = 0x992a0;\n  (*pcVar28)();\n  local_8c = ppiVar14;\n  local_94 = piVar24;\n  local_90 = iVar7;\n  piVar24 = &local_c8;\n  local_d0 = pcVar28 + 0xca310;\n  local_84 = uVar6;\n  local_88 = ppiVar16;\n  local_98 = param_3;\n  piVar26 = *(int **)(pcVar28 + 0xc278c);\n  piVar20 = *ppiVar17;\n  local_c8 = 0;\n  local_c4 = 0;\n  local_c0 = 0;\n  local_bc = 0;\n  local_b8 = 0;\n  local_b4 = 0;\n  local_b0 = 0;\n  local_ac = 0;\n  local_a8 = 0;\n  local_a4 = 0;\n  local_a0 = 0;\n  local_9c = *piVar26;\n  pbVar19 = (byte *)((int)piVar20 * 2);\n  if ((int)piVar20 < 1) {\n    uVar23 = 0;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099480:\n    piVar24 = ppiVar5[0xc];\n    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));\n    piVar11 = piVar13;\n    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));\n    if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }\n    piVar24 = piVar20;\n    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);\n    ppbVar12 = (byte **)0x0;\n    ppiVar17[0xc] = piVar11;\n    ppiVar17[0xd] = piVar20;\n    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }\nLAB_000994e0:\n  if (local_9c == *piVar26) {\n    return ppbVar12;\n  }\n  pcVar28 = *(code **)(local_d0 + -0x7ba0);\n  iVar7 = local_9c;\n  (*pcVar28)();\n  ppbVar4 = &pbStack_d8;\n  puVar25 = *(undefined4 **)(pcVar28 + 0xc2410);\n  ppbVar18 = (byte **)*puVar25;\n  ppbVar12 = ppbVar18;\n  pbStack_d8 = pbVar19;\n  piStack_d4 = param_4;\n  if ((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))) goto LAB_0009967c;\n  piVar20 = (int *)sqlite3_vmprintf();\n  if (piVar20 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;\n  }\n  else {\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }\n  *(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1;\n  ppbVar12 = ppbVar4;\nLAB_0009967c:\n  ppbVar4 = (byte **)*puVar25;\n  if (ppbVar18 == ppbVar4) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc23f4);\n  (*pcVar28)();\n  piVar20 = *(int **)(pcVar28 + 0xc231c);\n  ppbStack_128 = (byte **)0x0;\n  iVar7 = *piVar20;\n  ppbVar4 = (byte **)0x0;\n  if (ppbVar12 != (byte **)0x0) {\n    if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }\n  }\n  if (iVar7 == *piVar20) {\n    return ppbVar4;\n  }\n  pcVar28 = *(code **)(pcVar28 + 0xc2300);\n  (*pcVar28)();\n  ppbVar4 = (byte **)FUN_0008ad48();\n  if (ppbVar4 != (byte **)0x0) {\n    if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }\n    if (ppbVar4 != (byte **)0x0) {\n                    \n                    \n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }\n  }\n  return ppbVar4;\ncode_r0x000993b8:\n  piVar13 = ppiVar17[1];\n  iVar7 = iVar7 + 1;\n  goto LAB_000993bc;\n}" ({ "{") (declaration "int *piVar1;" (primitive_type "int") (pointer_declarator "*piVar1" (* "*") (identifier "piVar1")) (; ";")) (declaration "bool bVar2;" (primitive_type "bool") (identifier "bVar2") (; ";")) (declaration "undefined *puVar3;" (type_identifier "undefined") (pointer_declarator "*puVar3" (* "*") (identifier "puVar3")) (; ";")) (declaration "byte **ppbVar4;" (type_identifier "byte") (pointer_declarator "**ppbVar4" (* "*") (pointer_declarator "*ppbVar4" (* "*") (identifier "ppbVar4"))) (; ";")) (declaration "int **ppiVar5;" (primitive_type "int") (pointer_declarator "**ppiVar5" (* "*") (pointer_declarator "*ppiVar5" (* "*") (identifier "ppiVar5"))) (; ";")) (declaration "undefined4 uVar6;" (type_identifier "undefined4") (identifier "uVar6") (; ";")) (declaration "int iVar7;" (primitive_type "int") (identifier "iVar7") (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "undefined4 uVar9;" (type_identifier "undefined4") (identifier "uVar9") (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "int *piVar11;" (primitive_type "int") (pointer_declarator "*piVar11" (* "*") (identifier "piVar11")) (; ";")) (declaration "byte **ppbVar12;" (type_identifier "byte") (pointer_declarator "**ppbVar12" (* "*") (pointer_declarator "*ppbVar12" (* "*") (identifier "ppbVar12"))) (; ";")) (declaration "int *piVar13;" (primitive_type "int") (pointer_declarator "*piVar13" (* "*") (identifier "piVar13")) (; ";")) (declaration "int **ppiVar14;" (primitive_type "int") (pointer_declarator "**ppiVar14" (* "*") (pointer_declarator "*ppiVar14" (* "*") (identifier "ppiVar14"))) (; ";")) (declaration "byte bVar15;" (type_identifier "byte") (identifier "bVar15") (; ";")) (declaration "int **ppiVar16;" (primitive_type "int") (pointer_declarator "**ppiVar16" (* "*") (pointer_declarator "*ppiVar16" (* "*") (identifier "ppiVar16"))) (; ";")) (declaration "int **ppiVar17;" (primitive_type "int") (pointer_declarator "**ppiVar17" (* "*") (pointer_declarator "*ppiVar17" (* "*") (identifier "ppiVar17"))) (; ";")) (declaration "byte **ppbVar18;" (type_identifier "byte") (pointer_declarator "**ppbVar18" (* "*") (pointer_declarator "*ppbVar18" (* "*") (identifier "ppbVar18"))) (; ";")) (declaration "byte *pbVar19;" (type_identifier "byte") (pointer_declarator "*pbVar19" (* "*") (identifier "pbVar19")) (; ";")) (declaration "int *piVar20;" (primitive_type "int") (pointer_declarator "*piVar20" (* "*") (identifier "piVar20")) (; ";")) (declaration "undefined1 uVar21;" (type_identifier "undefined1") (identifier "uVar21") (; ";")) (declaration "uint uVar22;" (type_identifier "uint") (identifier "uVar22") (; ";")) (declaration "uint uVar23;" (type_identifier "uint") (identifier "uVar23") (; ";")) (declaration "int **unaff_s1;" (primitive_type "int") (pointer_declarator "**unaff_s1" (* "*") (pointer_declarator "*unaff_s1" (* "*") (identifier "unaff_s1"))) (; ";")) (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 "undefined *puVar27;" (type_identifier "undefined") (pointer_declarator "*puVar27" (* "*") (identifier "puVar27")) (; ";")) (declaration "code *pcVar28;" (type_identifier "code") (pointer_declarator "*pcVar28" (* "*") (identifier "pcVar28")) (; ";")) (declaration "double dVar29;" (primitive_type "double") (identifier "dVar29") (; ";")) (declaration "undefined8 uVar30;" (type_identifier "undefined8") (identifier "uVar30") (; ";")) (declaration "int *local_resc;" (primitive_type "int") (pointer_declarator "*local_resc" (* "*") (identifier "local_resc")) (; ";")) (declaration "byte **ppbStack_128;" (type_identifier "byte") (pointer_declarator "**ppbStack_128" (* "*") (pointer_declarator "*ppbStack_128" (* "*") (identifier "ppbStack_128"))) (; ";")) (declaration "byte *pbStack_d8;" (type_identifier "byte") (pointer_declarator "*pbStack_d8" (* "*") (identifier "pbStack_d8")) (; ";")) (declaration "int *piStack_d4;" (primitive_type "int") (pointer_declarator "*piStack_d4" (* "*") (identifier "piStack_d4")) (; ";")) (declaration "code *local_d0;" (type_identifier "code") (pointer_declarator "*local_d0" (* "*") (identifier "local_d0")) (; ";")) (declaration "undefined4 local_c8;" (type_identifier "undefined4") (identifier "local_c8") (; ";")) (declaration "undefined4 local_c4;" (type_identifier "undefined4") (identifier "local_c4") (; ";")) (declaration "undefined4 local_c0;" (type_identifier "undefined4") (identifier "local_c0") (; ";")) (declaration "undefined4 local_bc;" (type_identifier "undefined4") (identifier "local_bc") (; ";")) (declaration "undefined4 local_b8;" (type_identifier "undefined4") (identifier "local_b8") (; ";")) (declaration "undefined4 local_b4;" (type_identifier "undefined4") (identifier "local_b4") (; ";")) (declaration "undefined4 local_b0;" (type_identifier "undefined4") (identifier "local_b0") (; ";")) (declaration "undefined4 local_ac;" (type_identifier "undefined4") (identifier "local_ac") (; ";")) (declaration "undefined4 local_a8;" (type_identifier "undefined4") (identifier "local_a8") (; ";")) (declaration "undefined4 local_a4;" (type_identifier "undefined4") (identifier "local_a4") (; ";")) (declaration "undefined1 local_a0;" (type_identifier "undefined1") (identifier "local_a0") (; ";")) (declaration "int local_9c;" (primitive_type "int") (identifier "local_9c") (; ";")) (declaration "int **local_98;" (primitive_type "int") (pointer_declarator "**local_98" (* "*") (pointer_declarator "*local_98" (* "*") (identifier "local_98"))) (; ";")) (declaration "int *local_94;" (primitive_type "int") (pointer_declarator "*local_94" (* "*") (identifier "local_94")) (; ";")) (declaration "int local_90;" (primitive_type "int") (identifier "local_90") (; ";")) (declaration "int **local_8c;" (primitive_type "int") (pointer_declarator "**local_8c" (* "*") (pointer_declarator "*local_8c" (* "*") (identifier "local_8c"))) (; ";")) (declaration "int **local_88;" (primitive_type "int") (pointer_declarator "**local_88" (* "*") (pointer_declarator "*local_88" (* "*") (identifier "local_88"))) (; ";")) (declaration "undefined4 local_84;" (type_identifier "undefined4") (identifier "local_84") (; ";")) (declaration "undefined *local_70;" (type_identifier "undefined") (pointer_declarator "*local_70" (* "*") (identifier "local_70")) (; ";")) (declaration "int *local_64;" (primitive_type "int") (pointer_declarator "*local_64" (* "*") (identifier "local_64")) (; ";")) (declaration "int local_60;" (primitive_type "int") (identifier "local_60") (; ";")) (declaration "byte **local_5c;" (type_identifier "byte") (pointer_declarator "**local_5c" (* "*") (pointer_declarator "*local_5c" (* "*") (identifier "local_5c"))) (; ";")) (declaration "undefined *local_58;" (type_identifier "undefined") (pointer_declarator "*local_58" (* "*") (identifier "local_58")) (; ";")) (declaration "int **local_54;" (primitive_type "int") (pointer_declarator "**local_54" (* "*") (pointer_declarator "*local_54" (* "*") (identifier "local_54"))) (; ";")) (declaration "int **local_50;" (primitive_type "int") (pointer_declarator "**local_50" (* "*") (pointer_declarator "*local_50" (* "*") (identifier "local_50"))) (; ";")) (declaration "int **local_4c;" (primitive_type "int") (pointer_declarator "**local_4c" (* "*") (pointer_declarator "*local_4c" (* "*") (identifier "local_4c"))) (; ";")) (expression_statement "puVar3 = PTR___stack_chk_guard_0015ba2c;" (assignment_expression "puVar3 = PTR___stack_chk_guard_0015ba2c" (identifier "puVar3") (= "=") (identifier "PTR___stack_chk_guard_0015ba2c")) (; ";")) (expression_statement "ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c;" (assignment_expression "ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c" (identifier "ppbVar12") (= "=") (pointer_expression "*(byte ***)PTR___stack_chk_guard_0015ba2c" (* "*") (cast_expression "(byte ***)PTR___stack_chk_guard_0015ba2c" (( "(") (type_descriptor "byte ***" (type_identifier "byte") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (identifier "PTR___stack_chk_guard_0015ba2c")))) (; ";")) (expression_statement "ppiVar14 = param_1;" (assignment_expression "ppiVar14 = param_1" (identifier "ppiVar14") (= "=") (identifier "param_1")) (; ";")) (expression_statement "ppiVar16 = param_2;" (assignment_expression "ppiVar16 = param_2" (identifier "ppiVar16") (= "=") (identifier "param_2")) (; ";")) (expression_statement "local_54 = unaff_s1;" (assignment_expression "local_54 = unaff_s1" (identifier "local_54") (= "=") (identifier "unaff_s1")) (; ";")) (expression_statement "local_4c = unaff_s3;" (assignment_expression "local_4c = unaff_s3" (identifier "local_4c") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "local_resc = param_4;" (assignment_expression "local_resc = param_4" (identifier "local_resc") (= "=") (identifier "param_4")) (; ";")) (if_statement "if (*param_1 == (int *)0x0) {\n    ppiVar16 = &local_resc;\n    ppiVar5 = (int **)sqlite3_vmprintf(param_3);\n    if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)();\n    *param_2 = (int *)unaff_s2;\n    local_54 = param_1;\n    local_4c = param_2;\n  }" (if "if") (parenthesized_expression "(*param_1 == (int *)0x0)" (( "(") (binary_expression "*param_1 == (int *)0x0" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    ppiVar16 = &local_resc;\n    ppiVar5 = (int **)sqlite3_vmprintf(param_3);\n    if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)();\n    *param_2 = (int *)unaff_s2;\n    local_54 = param_1;\n    local_4c = param_2;\n  }" ({ "{") (expression_statement "ppiVar16 = &local_resc;" (assignment_expression "ppiVar16 = &local_resc" (identifier "ppiVar16") (= "=") (pointer_expression "&local_resc" (& "&") (identifier "local_resc"))) (; ";")) (expression_statement "ppiVar5 = (int **)sqlite3_vmprintf(param_3);" (assignment_expression "ppiVar5 = (int **)sqlite3_vmprintf(param_3)" (identifier "ppiVar5") (= "=") (cast_expression "(int **)sqlite3_vmprintf(param_3)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "sqlite3_vmprintf(param_3)" (identifier "sqlite3_vmprintf") (argument_list "(param_3)" (( "(") (identifier "param_3") () ")"))))) (; ";")) (if_statement "if (ppiVar5 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *param_1 = (int *)0x7;\n      ppiVar14 = (int **)*param_2;\n    }\n    else {\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }" (if "if") (parenthesized_expression "(ppiVar5 == (int **)0x0)" (( "(") (binary_expression "ppiVar5 == (int **)0x0" (identifier "ppiVar5") (== "==") (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      *param_1 = (int *)0x7;\n      ppiVar14 = (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 "*param_1 = (int *)0x7;" (assignment_expression "*param_1 = (int *)0x7" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (= "=") (cast_expression "(int *)0x7" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x7"))) (; ";")) (expression_statement "ppiVar14 = (int **)*param_2;" (assignment_expression "ppiVar14 = (int **)*param_2" (identifier "ppiVar14") (= "=") (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      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }" (else "else") (compound_statement "{\n      ppiVar14 = (int **)*param_2;\n      unaff_s2 = ppiVar5;\n      if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }\n    }" ({ "{") (expression_statement "ppiVar14 = (int **)*param_2;" (assignment_expression "ppiVar14 = (int **)*param_2" (identifier "ppiVar14") (= "=") (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 = ppiVar5;" (assignment_expression "unaff_s2 = ppiVar5" (identifier "unaff_s2") (= "=") (identifier "ppiVar5")) (; ";")) (if_statement "if (ppiVar14 != (int **)0x0) {\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\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 "{\n        param_3 = ppiVar5;\n        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);\n        ppiVar16 = ppiVar14;\n        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar14 = (int **)*param_2;\n      }" ({ "{") (expression_statement "param_3 = ppiVar5;" (assignment_expression "param_3 = ppiVar5" (identifier "param_3") (= "=") (identifier "ppiVar5")) (; ";")) (expression_statement "unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);" (assignment_expression "unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624)" (identifier "unaff_s2") (= "=") (cast_expression "(int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624)" (identifier "sqlite3_mprintf") (argument_list "(PTR_LAB_0015b5e8 + 0x5624)" (( "(") (binary_expression "PTR_LAB_0015b5e8 + 0x5624" (identifier "PTR_LAB_0015b5e8") (+ "+") (number_literal "0x5624")) () ")"))))) (; ";")) (expression_statement "ppiVar16 = ppiVar14;" (assignment_expression "ppiVar16 = ppiVar14" (identifier "ppiVar16") (= "=") (identifier "ppiVar14")) (; ";")) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(ppiVar5)" (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 "(ppiVar5)" (( "(") (identifier "ppiVar5") () ")"))) (; ";")) (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 "ppiVar14 = (int **)*param_2;" (assignment_expression "ppiVar14 = (int **)*param_2" (identifier "ppiVar14") (= "=") (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 *)PTR_sqlite3_free_0015b620)();" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)()" (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 "()" (( "(") () ")"))) (; ";")) (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 "local_54 = param_1;" (assignment_expression "local_54 = param_1" (identifier "local_54") (= "=") (identifier "param_1")) (; ";")) (expression_statement "local_4c = param_2;" (assignment_expression "local_4c = param_2" (identifier "local_4c") (= "=") (identifier "param_2")) (; ";")) (} "}"))) (expression_statement "ppbVar4 = *(byte ***)puVar3;" (assignment_expression "ppbVar4 = *(byte ***)puVar3" (identifier "ppbVar4") (= "=") (pointer_expression "*(byte ***)puVar3" (* "*") (cast_expression "(byte ***)puVar3" (( "(") (type_descriptor "byte ***" (type_identifier "byte") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (identifier "puVar3")))) (; ";")) (if_statement "if (ppbVar12 == ppbVar4) {\n    return ppbVar4;\n  }" (if "if") (parenthesized_expression "(ppbVar12 == ppbVar4)" (( "(") (binary_expression "ppbVar12 == ppbVar4" (identifier "ppbVar12") (== "==") (identifier "ppbVar4")) () ")")) (compound_statement "{\n    return ppbVar4;\n  }" ({ "{") (return_statement "return ppbVar4;" (return "return") (identifier "ppbVar4") (; ";")) (} "}"))) (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 "local_70 = puVar27 + 0xca57c;" (assignment_expression "local_70 = puVar27 + 0xca57c" (identifier "local_70") (= "=") (binary_expression "puVar27 + 0xca57c" (identifier "puVar27") (+ "+") (number_literal "0xca57c"))) (; ";")) (expression_statement "local_58 = puVar3;" (assignment_expression "local_58 = puVar3" (identifier "local_58") (= "=") (identifier "puVar3")) (; ";")) (expression_statement "piVar24 = *(int **)(puVar27 + 0xc29f8);" (assignment_expression "piVar24 = *(int **)(puVar27 + 0xc29f8)" (identifier "piVar24") (= "=") (pointer_expression "*(int **)(puVar27 + 0xc29f8)" (* "*") (cast_expression "(int **)(puVar27 + 0xc29f8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar27 + 0xc29f8)" (( "(") (binary_expression "puVar27 + 0xc29f8" (identifier "puVar27") (+ "+") (number_literal "0xc29f8")) () ")"))))) (; ";")) (expression_statement "local_64 = (int *)0x0;" (assignment_expression "local_64 = (int *)0x0" (identifier "local_64") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_5c = (byte **)*piVar24;" (assignment_expression "local_5c = (byte **)*piVar24" (identifier "local_5c") (= "=") (cast_expression "(byte **)*piVar24" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*piVar24" (* "*") (identifier "piVar24")))) (; ";")) (expression_statement "local_50 = unaff_s2;" (assignment_expression "local_50 = unaff_s2" (identifier "local_50") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "uVar6 = (**(code **)(puVar27 + 0xc2694))();" (assignment_expression "uVar6 = (**(code **)(puVar27 + 0xc2694))()" (identifier "uVar6") (= "=") (call_expression "(**(code **)(puVar27 + 0xc2694))()" (parenthesized_expression "(**(code **)(puVar27 + 0xc2694))" (( "(") (pointer_expression "**(code **)(puVar27 + 0xc2694)" (* "*") (pointer_expression "*(code **)(puVar27 + 0xc2694)" (* "*") (cast_expression "(code **)(puVar27 + 0xc2694)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar27 + 0xc2694)" (( "(") (binary_expression "puVar27 + 0xc2694" (identifier "puVar27") (+ "+") (number_literal "0xc2694")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3);" (assignment_expression "iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3)" (identifier "iVar7") (= "=") (call_expression "(**(code **)(local_70 + -0x7f9c))(*param_3)" (parenthesized_expression "(**(code **)(local_70 + -0x7f9c))" (( "(") (pointer_expression "**(code **)(local_70 + -0x7f9c)" (* "*") (pointer_expression "*(code **)(local_70 + -0x7f9c)" (* "*") (cast_expression "(code **)(local_70 + -0x7f9c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_70 + -0x7f9c)" (( "(") (binary_expression "local_70 + -0x7f9c" (identifier "local_70") (+ "+") (number_literal "-0x7f9c")) () ")"))))) () ")")) (argument_list "(*param_3)" (( "(") (pointer_expression "*param_3" (* "*") (identifier "param_3")) () ")")))) (; ";")) (expression_statement "iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3);" (assignment_expression "iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(local_70 + -0x7fac))(*param_3)" (parenthesized_expression "(**(code **)(local_70 + -0x7fac))" (( "(") (pointer_expression "**(code **)(local_70 + -0x7fac)" (* "*") (pointer_expression "*(code **)(local_70 + -0x7fac)" (* "*") (cast_expression "(code **)(local_70 + -0x7fac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_70 + -0x7fac)" (( "(") (binary_expression "local_70 + -0x7fac" (identifier "local_70") (+ "+") (number_literal "-0x7fac")) () ")"))))) () ")")) (argument_list "(*param_3)" (( "(") (pointer_expression "*param_3" (* "*") (identifier "param_3")) () ")")))) (; ";")) (expression_statement "ppiVar5 = ppiVar14;" (assignment_expression "ppiVar5 = ppiVar14" (identifier "ppiVar5") (= "=") (identifier "ppiVar14")) (; ";")) (if_statement "if (ppiVar16 == (int **)&SUB_00000002) {\n    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);\n    param_4 = &local_60;\n    local_60 = 0;\n    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);\n    if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n  }\n  else {\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }" (if "if") (parenthesized_expression "(ppiVar16 == (int **)&SUB_00000002)" (( "(") (binary_expression "ppiVar16 == (int **)&SUB_00000002" (identifier "ppiVar16") (== "==") (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    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);\n    param_4 = &local_60;\n    local_60 = 0;\n    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);\n    if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n  }" ({ "{") (expression_statement "uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);" (assignment_expression "uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14)" (identifier "uVar9") (= "=") (call_expression "(**(code **)(local_70 + -0x7ed0))(ppiVar14)" (parenthesized_expression "(**(code **)(local_70 + -0x7ed0))" (( "(") (pointer_expression "**(code **)(local_70 + -0x7ed0)" (* "*") (pointer_expression "*(code **)(local_70 + -0x7ed0)" (* "*") (cast_expression "(code **)(local_70 + -0x7ed0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_70 + -0x7ed0)" (( "(") (binary_expression "local_70 + -0x7ed0" (identifier "local_70") (+ "+") (number_literal "-0x7ed0")) () ")"))))) () ")")) (argument_list "(ppiVar14)" (( "(") (identifier "ppiVar14") () ")")))) (; ";")) (expression_statement "param_4 = &local_60;" (assignment_expression "param_4 = &local_60" (identifier "param_4") (= "=") (pointer_expression "&local_60" (& "&") (identifier "local_60"))) (; ";")) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" (identifier "local_60") (= "=") (number_literal "0")) (; ";")) (expression_statement "(**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7d60))" (( "(") (pointer_expression "**(code **)(local_70 + -0x7d60)" (* "*") (pointer_expression "*(code **)(local_70 + -0x7d60)" (* "*") (cast_expression "(code **)(local_70 + -0x7d60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_70 + -0x7d60)" (( "(") (binary_expression "local_70 + -0x7d60" (identifier "local_70") (+ "+") (number_literal "-0x7d60")) () ")"))))) () ")")) (argument_list "(uVar9,0x3ec,0xffffffff)" (( "(") (identifier "uVar9") (, ",") (number_literal "0x3ec") (, ",") (number_literal "0xffffffff") () ")"))) (; ";")) (if_statement "if (local_60 == 0) {\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }\n    else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }" (if "if") (parenthesized_expression "(local_60 == 0)" (( "(") (binary_expression "local_60 == 0" (identifier "local_60") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }" ({ "{") (expression_statement "ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);" (assignment_expression "ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434)" (identifier "ppiVar17") (= "=") (cast_expression "(int **)(*(int *)(local_70 + -0x7fb4) + -0x7434)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(local_70 + -0x7fb4) + -0x7434)" (( "(") (binary_expression "*(int *)(local_70 + -0x7fb4) + -0x7434" (pointer_expression "*(int *)(local_70 + -0x7fb4)" (* "*") (cast_expression "(int *)(local_70 + -0x7fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_70 + -0x7fb4)" (( "(") (binary_expression "local_70 + -0x7fb4" (identifier "local_70") (+ "+") (number_literal "-0x7fb4")) () ")")))) (+ "+") (number_literal "-0x7434")) () ")")))) (; ";")) (expression_statement "(**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7e40))" (( "(") (pointer_expression "**(code **)(local_70 + -0x7e40)" (* "*") (pointer_expression "*(code **)(local_70 + -0x7e40)" (* "*") (cast_expression "(code **)(local_70 + -0x7e40)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_70 + -0x7e40)" (( "(") (binary_expression "local_70 + -0x7e40" (identifier "local_70") (+ "+") (number_literal "-0x7e40")) () ")"))))) () ")")) (argument_list "(ppiVar14,ppiVar17,0xffffffff)" (( "(") (identifier "ppiVar14") (, ",") (identifier "ppiVar17") (, ",") (number_literal "0xffffffff") () ")"))) (; ";")) (} "}")) (else_clause "else {\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }" (else "else") (compound_statement "{\n      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);\n      if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);\n      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);\n    }" ({ "{") (expression_statement "iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);" (assignment_expression "iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1])" (identifier "iVar10") (= "=") (call_expression "(**(code **)(local_70 + -0x7fac))(param_3[1])" (parenthesized_expression "(**(code **)(local_70 + -0x7fac))" (( "(") (pointer_expression "**(code **)(local_70 + -0x7fac)" (* "*") (pointer_expression "*(code **)(local_70 + -0x7fac)" (* "*") (cast_expression "(code **)(local_70 + -0x7fac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_70 + -0x7fac)" (( "(") (binary_expression "local_70 + -0x7fac" (identifier "local_70") (+ "+") (number_literal "-0x7fac")) () ")"))))) () ")")) (argument_list "(param_3[1])" (( "(") (subscript_expression "param_3[1]" (identifier "param_3") ([ "[") (number_literal "1") (] "]")) () ")")))) (; ";")) (if_statement "if ((iVar7 != 0) && (iVar10 == 4)) {\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }" (if "if") (parenthesized_expression "((iVar7 != 0) && (iVar10 == 4))" (( "(") (binary_expression "(iVar7 != 0) && (iVar10 == 4)" (parenthesized_expression "(iVar7 != 0)" (( "(") (binary_expression "iVar7 != 0" (identifier "iVar7") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar10 == 4)" (( "(") (binary_expression "iVar10 == 4" (identifier "iVar10") (== "==") (number_literal "4")) () ")"))) () ")")) (compound_statement "{\n        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);\n        local_64 = (int *)*local_64;\n        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);\n        if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }" ({ "{") (expression_statement "local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);" (assignment_expression "local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1])" (identifier "local_64") (= "=") (cast_expression "(int *)(**(code **)(local_70 + -0x7fb0))(param_3[1])" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(local_70 + -0x7fb0))(param_3[1])" (parenthesized_expression "(**(code **)(local_70 + -0x7fb0))" (( "(") (pointer_expression "**(code **)(local_70 + -0x7fb0)" (* "*") (pointer_expression "*(code **)(local_70 + -0x7fb0)" (* "*") (cast_expression "(code **)(local_70 + -0x7fb0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_70 + -0x7fb0)" (( "(") (binary_expression "local_70 + -0x7fb0" (identifier "local_70") (+ "+") (number_literal "-0x7fb0")) () ")"))))) () ")")) (argument_list "(param_3[1])" (( "(") (subscript_expression "param_3[1]" (identifier "param_3") ([ "[") (number_literal "1") (] "]")) () ")"))))) (; ";")) (expression_statement "local_64 = (int *)*local_64;" (assignment_expression "local_64 = (int *)*local_64" (identifier "local_64") (= "=") (cast_expression "(int *)*local_64" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*local_64" (* "*") (identifier "local_64")))) (; ";")) (expression_statement "piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64);" (assignment_expression "piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64)" (identifier "piVar20") (= "=") (cast_expression "(int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))\n                                   (uVar6,iVar7,iVar8 + 1,local_64)" (parenthesized_expression "(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))" (( "(") (pointer_expression "*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8)" (* "*") (cast_expression "(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(local_70 + -0x7eb0) + 0x43f8)" (( "(") (binary_expression "*(int *)(local_70 + -0x7eb0) + 0x43f8" (pointer_expression "*(int *)(local_70 + -0x7eb0)" (* "*") (cast_expression "(int *)(local_70 + -0x7eb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_70 + -0x7eb0)" (( "(") (binary_expression "local_70 + -0x7eb0" (identifier "local_70") (+ "+") (number_literal "-0x7eb0")) () ")")))) (+ "+") (number_literal "0x43f8")) () ")")))) () ")")) (argument_list "(uVar6,iVar7,iVar8 + 1,local_64)" (( "(") (identifier "uVar6") (, ",") (identifier "iVar7") (, ",") (binary_expression "iVar8 + 1" (identifier "iVar8") (+ "+") (number_literal "1")) (, ",") (identifier "local_64") () ")"))))) (; ";")) (if_statement "if (local_64 == piVar20) {\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }" (if "if") (parenthesized_expression "(local_64 == piVar20)" (( "(") (binary_expression "local_64 == piVar20" (identifier "local_64") (== "==") (identifier "piVar20")) () ")")) (compound_statement "{\n          (**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);\n        }" ({ "{") (expression_statement "(**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7e40))\n                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7e40))" (( "(") (pointer_expression "**(code **)(local_70 + -0x7e40)" (* "*") (pointer_expression "*(code **)(local_70 + -0x7e40)" (* "*") (cast_expression "(code **)(local_70 + -0x7e40)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_70 + -0x7e40)" (( "(") (binary_expression "local_70 + -0x7e40" (identifier "local_70") (+ "+") (number_literal "-0x7e40")) () ")"))))) () ")")) (argument_list "(ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff)" (( "(") (identifier "ppiVar14") (, ",") (binary_expression "*(int *)(local_70 + -0x7fc8) + 0x52ac" (pointer_expression "*(int *)(local_70 + -0x7fc8)" (* "*") (cast_expression "(int *)(local_70 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_70 + -0x7fc8)" (( "(") (binary_expression "local_70 + -0x7fc8" (identifier "local_70") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "0x52ac")) (, ",") (number_literal "0xffffffff") () ")"))) (; ";")) (} "}"))) (goto_statement "goto LAB_000990fc;" (goto "goto") (statement_identifier "LAB_000990fc") (; ";")) (} "}"))) (expression_statement "ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);" (assignment_expression "ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c)" (identifier "ppiVar17") (= "=") (cast_expression "(int **)(*(int *)(local_70 + -0x7fb4) + -0x744c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(local_70 + -0x7fb4) + -0x744c)" (( "(") (binary_expression "*(int *)(local_70 + -0x7fb4) + -0x744c" (pointer_expression "*(int *)(local_70 + -0x7fb4)" (* "*") (cast_expression "(int *)(local_70 + -0x7fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_70 + -0x7fb4)" (( "(") (binary_expression "local_70 + -0x7fb4" (identifier "local_70") (+ "+") (number_literal "-0x7fb4")) () ")")))) (+ "+") (number_literal "-0x744c")) () ")")))) (; ";")) (expression_statement "(**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7e40))" (( "(") (pointer_expression "**(code **)(local_70 + -0x7e40)" (* "*") (pointer_expression "*(code **)(local_70 + -0x7e40)" (* "*") (cast_expression "(code **)(local_70 + -0x7e40)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_70 + -0x7e40)" (( "(") (binary_expression "local_70 + -0x7e40" (identifier "local_70") (+ "+") (number_literal "-0x7e40")) () ")"))))) () ")")) (argument_list "(ppiVar14,ppiVar17,0xffffffff)" (( "(") (identifier "ppiVar14") (, ",") (identifier "ppiVar17") (, ",") (number_literal "0xffffffff") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }" (else "else") (compound_statement "{\n    if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }\n    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);\n    ppiVar17 = param_3;\n    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);\n    ppiVar5 = param_3;\n    (**(code **)(local_70 + -0x7f90))();\n  }" ({ "{") (if_statement "if (iVar7 == 0) {\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }" (if "if") (parenthesized_expression "(iVar7 == 0)" (( "(") (binary_expression "iVar7 == 0" (identifier "iVar7") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n      if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }\n    }" ({ "{") (labeled_statement "LAB_000990f4:\n      iVar8 = *(int *)(local_70 + -0x7fb4);" (statement_identifier "LAB_000990f4") (: ":") (expression_statement "iVar8 = *(int *)(local_70 + -0x7fb4);" (assignment_expression "iVar8 = *(int *)(local_70 + -0x7fb4)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(local_70 + -0x7fb4)" (* "*") (cast_expression "(int *)(local_70 + -0x7fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_70 + -0x7fb4)" (( "(") (binary_expression "local_70 + -0x7fb4" (identifier "local_70") (+ "+") (number_literal "-0x7fb4")) () ")"))))) (; ";"))) (if_statement "if (local_64 != (int *)0x0) {\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }" (if "if") (parenthesized_expression "(local_64 != (int *)0x0)" (( "(") (binary_expression "local_64 != (int *)0x0" (identifier "local_64") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000990fc:\n        param_4 = (int *)0xffffffff;\n        ppiVar17 = &local_64;\n        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);\n        goto LAB_00099118;\n      }" ({ "{") (labeled_statement "LAB_000990fc:\n        param_4 = (int *)0xffffffff;" (statement_identifier "LAB_000990fc") (: ":") (expression_statement "param_4 = (int *)0xffffffff;" (assignment_expression "param_4 = (int *)0xffffffff" (identifier "param_4") (= "=") (cast_expression "(int *)0xffffffff" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xffffffff"))) (; ";"))) (expression_statement "ppiVar17 = &local_64;" (assignment_expression "ppiVar17 = &local_64" (identifier "ppiVar17") (= "=") (pointer_expression "&local_64" (& "&") (identifier "local_64"))) (; ";")) (expression_statement "(**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);" (call_expression "(**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4)" (parenthesized_expression "(**(code **)(local_70 + -0x7e28))" (( "(") (pointer_expression "**(code **)(local_70 + -0x7e28)" (* "*") (pointer_expression "*(code **)(local_70 + -0x7e28)" (* "*") (cast_expression "(code **)(local_70 + -0x7e28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_70 + -0x7e28)" (( "(") (binary_expression "local_70 + -0x7e28" (identifier "local_70") (+ "+") (number_literal "-0x7e28")) () ")"))))) () ")")) (argument_list "(ppiVar14,ppiVar17,4)" (( "(") (identifier "ppiVar14") (, ",") (identifier "ppiVar17") (, ",") (number_literal "4") () ")"))) (; ";")) (goto_statement "goto LAB_00099118;" (goto "goto") (statement_identifier "LAB_00099118") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }" (else "else") (compound_statement "{\n      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);\n      if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }\n      local_64 = (int *)0x0;\n      iVar8 = *(int *)(local_70 + -0x7fb4);\n    }" ({ "{") (expression_statement "iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);" (assignment_expression "iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1)" (identifier "iVar8") (= "=") (call_expression "(*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1)" (parenthesized_expression "(*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))" (( "(") (pointer_expression "*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24)" (* "*") (cast_expression "(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(local_70 + -0x7ef0) + -0x2c24)" (( "(") (binary_expression "*(int *)(local_70 + -0x7ef0) + -0x2c24" (pointer_expression "*(int *)(local_70 + -0x7ef0)" (* "*") (cast_expression "(int *)(local_70 + -0x7ef0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_70 + -0x7ef0)" (( "(") (binary_expression "local_70 + -0x7ef0" (identifier "local_70") (+ "+") (number_literal "-0x7ef0")) () ")")))) (+ "+") (number_literal "-0x2c24")) () ")")))) () ")")) (argument_list "(uVar6,iVar7,iVar8 + 1)" (( "(") (identifier "uVar6") (, ",") (identifier "iVar7") (, ",") (binary_expression "iVar8 + 1" (identifier "iVar8") (+ "+") (number_literal "1")) () ")")))) (; ";")) (if_statement "if (iVar8 != 0) {\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }" (if "if") (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        local_64 = *(int **)(iVar8 + 8);\n        goto LAB_000990f4;\n      }" ({ "{") (expression_statement "local_64 = *(int **)(iVar8 + 8);" (assignment_expression "local_64 = *(int **)(iVar8 + 8)" (identifier "local_64") (= "=") (pointer_expression "*(int **)(iVar8 + 8)" (* "*") (cast_expression "(int **)(iVar8 + 8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar8 + 8)" (( "(") (binary_expression "iVar8 + 8" (identifier "iVar8") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (goto_statement "goto LAB_000990f4;" (goto "goto") (statement_identifier "LAB_000990f4") (; ";")) (} "}"))) (expression_statement "local_64 = (int *)0x0;" (assignment_expression "local_64 = (int *)0x0" (identifier "local_64") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "iVar8 = *(int *)(local_70 + -0x7fb4);" (assignment_expression "iVar8 = *(int *)(local_70 + -0x7fb4)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(local_70 + -0x7fb4)" (* "*") (cast_expression "(int *)(local_70 + -0x7fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_70 + -0x7fb4)" (( "(") (binary_expression "local_70 + -0x7fb4" (identifier "local_70") (+ "+") (number_literal "-0x7fb4")) () ")"))))) (; ";")) (} "}")))) (expression_statement "param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);" (assignment_expression "param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7)" (identifier "param_3") (= "=") (cast_expression "(int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "sqlite3_mprintf(iVar8 + -0x7478,iVar7)" (identifier "sqlite3_mprintf") (argument_list "(iVar8 + -0x7478,iVar7)" (( "(") (binary_expression "iVar8 + -0x7478" (identifier "iVar8") (+ "+") (number_literal "-0x7478")) (, ",") (identifier "iVar7") () ")"))))) (; ";")) (expression_statement "ppiVar17 = param_3;" (assignment_expression "ppiVar17 = param_3" (identifier "ppiVar17") (= "=") (identifier "param_3")) (; ";")) (expression_statement "(**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);" (call_expression "(**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff)" (parenthesized_expression "(**(code **)(local_70 + -0x7e40))" (( "(") (pointer_expression "**(code **)(local_70 + -0x7e40)" (* "*") (pointer_expression "*(code **)(local_70 + -0x7e40)" (* "*") (cast_expression "(code **)(local_70 + -0x7e40)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_70 + -0x7e40)" (( "(") (binary_expression "local_70 + -0x7e40" (identifier "local_70") (+ "+") (number_literal "-0x7e40")) () ")"))))) () ")")) (argument_list "(ppiVar14,param_3,0xffffffff)" (( "(") (identifier "ppiVar14") (, ",") (identifier "param_3") (, ",") (number_literal "0xffffffff") () ")"))) (; ";")) (expression_statement "ppiVar5 = param_3;" (assignment_expression "ppiVar5 = param_3" (identifier "ppiVar5") (= "=") (identifier "param_3")) (; ";")) (expression_statement "(**(code **)(local_70 + -0x7f90))();" (call_expression "(**(code **)(local_70 + -0x7f90))()" (parenthesized_expression "(**(code **)(local_70 + -0x7f90))" (( "(") (pointer_expression "**(code **)(local_70 + -0x7f90)" (* "*") (pointer_expression "*(code **)(local_70 + -0x7f90)" (* "*") (cast_expression "(code **)(local_70 + -0x7f90)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_70 + -0x7f90)" (( "(") (binary_expression "local_70 + -0x7f90" (identifier "local_70") (+ "+") (number_literal "-0x7f90")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_00099118:\n  if (local_5c == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }" (statement_identifier "LAB_00099118") (: ":") (if_statement "if (local_5c == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }" (if "if") (parenthesized_expression "(local_5c == (byte **)*piVar24)" (( "(") (binary_expression "local_5c == (byte **)*piVar24" (identifier "local_5c") (== "==") (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 "pcVar28 = *(code **)(local_70 + -0x7ba0);" (assignment_expression "pcVar28 = *(code **)(local_70 + -0x7ba0)" (identifier "pcVar28") (= "=") (pointer_expression "*(code **)(local_70 + -0x7ba0)" (* "*") (cast_expression "(code **)(local_70 + -0x7ba0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_70 + -0x7ba0)" (( "(") (binary_expression "local_70 + -0x7ba0" (identifier "local_70") (+ "+") (number_literal "-0x7ba0")) () ")"))))) (; ";")) (expression_statement "uVar6 = 0x992a0;" (assignment_expression "uVar6 = 0x992a0" (identifier "uVar6") (= "=") (number_literal "0x992a0")) (; ";")) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" (( "(") (pointer_expression "*pcVar28" (* "*") (identifier "pcVar28")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "local_8c = ppiVar14;" (assignment_expression "local_8c = ppiVar14" (identifier "local_8c") (= "=") (identifier "ppiVar14")) (; ";")) (expression_statement "local_94 = piVar24;" (assignment_expression "local_94 = piVar24" (identifier "local_94") (= "=") (identifier "piVar24")) (; ";")) (expression_statement "local_90 = iVar7;" (assignment_expression "local_90 = iVar7" (identifier "local_90") (= "=") (identifier "iVar7")) (; ";")) (expression_statement "piVar24 = &local_c8;" (assignment_expression "piVar24 = &local_c8" (identifier "piVar24") (= "=") (pointer_expression "&local_c8" (& "&") (identifier "local_c8"))) (; ";")) (expression_statement "local_d0 = pcVar28 + 0xca310;" (assignment_expression "local_d0 = pcVar28 + 0xca310" (identifier "local_d0") (= "=") (binary_expression "pcVar28 + 0xca310" (identifier "pcVar28") (+ "+") (number_literal "0xca310"))) (; ";")) (expression_statement "local_84 = uVar6;" (assignment_expression "local_84 = uVar6" (identifier "local_84") (= "=") (identifier "uVar6")) (; ";")) (expression_statement "local_88 = ppiVar16;" (assignment_expression "local_88 = ppiVar16" (identifier "local_88") (= "=") (identifier "ppiVar16")) (; ";")) (expression_statement "local_98 = param_3;" (assignment_expression "local_98 = param_3" (identifier "local_98") (= "=") (identifier "param_3")) (; ";")) (expression_statement "piVar26 = *(int **)(pcVar28 + 0xc278c);" (assignment_expression "piVar26 = *(int **)(pcVar28 + 0xc278c)" (identifier "piVar26") (= "=") (pointer_expression "*(int **)(pcVar28 + 0xc278c)" (* "*") (cast_expression "(int **)(pcVar28 + 0xc278c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0xc278c)" (( "(") (binary_expression "pcVar28 + 0xc278c" (identifier "pcVar28") (+ "+") (number_literal "0xc278c")) () ")"))))) (; ";")) (expression_statement "piVar20 = *ppiVar17;" (assignment_expression "piVar20 = *ppiVar17" (identifier "piVar20") (= "=") (pointer_expression "*ppiVar17" (* "*") (identifier "ppiVar17"))) (; ";")) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" (identifier "local_c8") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_c4 = 0;" (assignment_expression "local_c4 = 0" (identifier "local_c4") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_c0 = 0;" (assignment_expression "local_c0 = 0" (identifier "local_c0") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_bc = 0;" (assignment_expression "local_bc = 0" (identifier "local_bc") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_b8 = 0;" (assignment_expression "local_b8 = 0" (identifier "local_b8") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_b4 = 0;" (assignment_expression "local_b4 = 0" (identifier "local_b4") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" (identifier "local_b0") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_ac = 0;" (assignment_expression "local_ac = 0" (identifier "local_ac") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_a8 = 0;" (assignment_expression "local_a8 = 0" (identifier "local_a8") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_a4 = 0;" (assignment_expression "local_a4 = 0" (identifier "local_a4") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_a0 = 0;" (assignment_expression "local_a0 = 0" (identifier "local_a0") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_9c = *piVar26;" (assignment_expression "local_9c = *piVar26" (identifier "local_9c") (= "=") (pointer_expression "*piVar26" (* "*") (identifier "piVar26"))) (; ";")) (expression_statement "pbVar19 = (byte *)((int)piVar20 * 2);" (assignment_expression "pbVar19 = (byte *)((int)piVar20 * 2)" (identifier "pbVar19") (= "=") (cast_expression "(byte *)((int)piVar20 * 2)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar20 * 2)" (( "(") (binary_expression "(int)piVar20 * 2" (cast_expression "(int)piVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar20")) (* "*") (number_literal "2")) () ")")))) (; ";")) (if_statement "if ((int)piVar20 < 1) {\n    uVar23 = 0;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099480:\n    piVar24 = ppiVar5[0xc];\n    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));\n    piVar11 = piVar13;\n    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));\n    if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }\n    piVar24 = piVar20;\n    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);\n    ppbVar12 = (byte **)0x0;\n    ppiVar17[0xc] = piVar11;\n    ppiVar17[0xd] = piVar20;\n    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }" (if "if") (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")) () ")")) (compound_statement "{\n    uVar23 = 0;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099480:\n    piVar24 = ppiVar5[0xc];\n    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));\n    piVar11 = piVar13;\n    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));\n    if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }\n    piVar24 = piVar20;\n    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);\n    ppbVar12 = (byte **)0x0;\n    ppiVar17[0xc] = piVar11;\n    ppiVar17[0xd] = piVar20;\n    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);\n  }" ({ "{") (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" (identifier "uVar23") (= "=") (number_literal "0")) (; ";")) (expression_statement "ppiVar17[5] = (int *)0x2;" (assignment_expression "ppiVar17[5] = (int *)0x2" (subscript_expression "ppiVar17[5]" (identifier "ppiVar17") ([ "[") (number_literal "5") (] "]")) (= "=") (cast_expression "(int *)0x2" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x2"))) (; ";")) (expression_statement "ppiVar17[7] = (int *)0x1;" (assignment_expression "ppiVar17[7] = (int *)0x1" (subscript_expression "ppiVar17[7]" (identifier "ppiVar17") ([ "[") (number_literal "7") (] "]")) (= "=") (cast_expression "(int *)0x1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (labeled_statement "LAB_00099480:\n    piVar24 = ppiVar5[0xc];" (statement_identifier "LAB_00099480") (: ":") (expression_statement "piVar24 = ppiVar5[0xc];" (assignment_expression "piVar24 = ppiVar5[0xc]" (identifier "piVar24") (= "=") (subscript_expression "ppiVar5[0xc]" (identifier "ppiVar5") ([ "[") (number_literal "0xc") (] "]"))) (; ";"))) (expression_statement "piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));" (assignment_expression "piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f))" (identifier "piVar13") (= "=") (cast_expression "(int *)((int)piVar24 >> (uVar23 & 0x1f))" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar24 >> (uVar23 & 0x1f))" (( "(") (binary_expression "(int)piVar24 >> (uVar23 & 0x1f)" (cast_expression "(int)piVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar24")) (>> ">>") (parenthesized_expression "(uVar23 & 0x1f)" (( "(") (binary_expression "uVar23 & 0x1f" (identifier "uVar23") (& "&") (number_literal "0x1f")) () ")"))) () ")")))) (; ";")) (expression_statement "piVar11 = piVar13;" (assignment_expression "piVar11 = piVar13" (identifier "piVar11") (= "=") (identifier "piVar13")) (; ";")) (expression_statement "piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));" (assignment_expression "piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f))" (identifier "piVar20") (= "=") (cast_expression "(int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f))" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f))" (( "(") (binary_expression "((int)piVar24 << 1) << (~uVar23 & 0x1f) |\n                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f)" (binary_expression "((int)piVar24 << 1) << (~uVar23 & 0x1f)" (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")) () ")")) (<< "<<") (parenthesized_expression "(~uVar23 & 0x1f)" (( "(") (binary_expression "~uVar23 & 0x1f" (unary_expression "~uVar23" (~ "~") (identifier "uVar23")) (& "&") (number_literal "0x1f")) () ")"))) (| "|") (binary_expression "(uint)ppiVar5[0xd] >> (uVar23 & 0x1f)" (cast_expression "(uint)ppiVar5[0xd]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "ppiVar5[0xd]" (identifier "ppiVar5") ([ "[") (number_literal "0xd") (] "]"))) (>> ">>") (parenthesized_expression "(uVar23 & 0x1f)" (( "(") (binary_expression "uVar23 & 0x1f" (identifier "uVar23") (& "&") (number_literal "0x1f")) () ")")))) () ")")))) (; ";")) (if_statement "if ((uVar23 & 0x20) != 0) {\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }" (if "if") (parenthesized_expression "((uVar23 & 0x20) != 0)" (( "(") (binary_expression "(uVar23 & 0x20) != 0" (parenthesized_expression "(uVar23 & 0x20)" (( "(") (binary_expression "uVar23 & 0x20" (identifier "uVar23") (& "&") (number_literal "0x20")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      piVar11 = (int *)((int)piVar24 >> 0x1f);\n      piVar20 = piVar13;\n    }" ({ "{") (expression_statement "piVar11 = (int *)((int)piVar24 >> 0x1f);" (assignment_expression "piVar11 = (int *)((int)piVar24 >> 0x1f)" (identifier "piVar11") (= "=") (cast_expression "(int *)((int)piVar24 >> 0x1f)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar24 >> 0x1f)" (( "(") (binary_expression "(int)piVar24 >> 0x1f" (cast_expression "(int)piVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar24")) (>> ">>") (number_literal "0x1f")) () ")")))) (; ";")) (expression_statement "piVar20 = piVar13;" (assignment_expression "piVar20 = piVar13" (identifier "piVar20") (= "=") (identifier "piVar13")) (; ";")) (} "}"))) (expression_statement "piVar24 = piVar20;" (assignment_expression "piVar24 = piVar20" (identifier "piVar24") (= "=") (identifier "piVar20")) (; ";")) (expression_statement "dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);" (assignment_expression "dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11)" (identifier "dVar29") (= "=") (cast_expression "(double)(**(code **)(local_d0 + -0x7f18))(piVar11)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(local_d0 + -0x7f18))(piVar11)" (parenthesized_expression "(**(code **)(local_d0 + -0x7f18))" (( "(") (pointer_expression "**(code **)(local_d0 + -0x7f18)" (* "*") (pointer_expression "*(code **)(local_d0 + -0x7f18)" (* "*") (cast_expression "(code **)(local_d0 + -0x7f18)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_d0 + -0x7f18)" (( "(") (binary_expression "local_d0 + -0x7f18" (identifier "local_d0") (+ "+") (number_literal "-0x7f18")) () ")"))))) () ")")) (argument_list "(piVar11)" (( "(") (identifier "piVar11") () ")"))))) (; ";")) (expression_statement "ppbVar12 = (byte **)0x0;" (assignment_expression "ppbVar12 = (byte **)0x0" (identifier "ppbVar12") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppiVar17[0xc] = piVar11;" (assignment_expression "ppiVar17[0xc] = piVar11" (subscript_expression "ppiVar17[0xc]" (identifier "ppiVar17") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "piVar11")) (; ";")) (expression_statement "ppiVar17[0xd] = piVar20;" (assignment_expression "ppiVar17[0xd] = piVar20" (subscript_expression "ppiVar17[0xd]" (identifier "ppiVar17") ([ "[") (number_literal "0xd") (] "]")) (= "=") (identifier "piVar20")) (; ";")) (expression_statement "*(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);" (assignment_expression "*(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780)" (pointer_expression "*(double *)(ppiVar17 + 10)" (* "*") (cast_expression "(double *)(ppiVar17 + 10)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(ppiVar17 + 10)" (( "(") (binary_expression "ppiVar17 + 10" (identifier "ppiVar17") (+ "+") (number_literal "10")) () ")")))) (= "=") (binary_expression "dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780)" (identifier "dVar29") (* "*") (pointer_expression "*(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780)" (* "*") (cast_expression "(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(local_d0 + -0x7f1c) + -0x7780)" (( "(") (binary_expression "*(int *)(local_d0 + -0x7f1c) + -0x7780" (pointer_expression "*(int *)(local_d0 + -0x7f1c)" (* "*") (cast_expression "(int *)(local_d0 + -0x7f1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_d0 + -0x7f1c)" (( "(") (binary_expression "local_d0 + -0x7f1c" (identifier "local_d0") (+ "+") (number_literal "-0x7f1c")) () ")")))) (+ "+") (number_literal "-0x7780")) () ")")))))) (; ";")) (} "}")) (else_clause "else {\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }" (else "else") (compound_statement "{\n    piVar13 = ppiVar17[1];\n    bVar2 = false;\n    piVar11 = piVar13;\n    do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);\n    param_4 = (int *)0x0;\n    uVar22 = 0;\n    iVar7 = 0;\nLAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);\n    if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }\n    param_4 = param_4 + 3;\n    if ((int)uVar22 < 0x28) goto code_r0x000993b8;\n    ppiVar17[5] = (int *)0x2;\n    ppiVar17[7] = (int *)0x1;\nLAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);\n    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);\n    ppiVar17[6] = piVar20;\n    if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar12 = (byte **)&DAT_00000007;\n  }" ({ "{") (expression_statement "piVar13 = ppiVar17[1];" (assignment_expression "piVar13 = ppiVar17[1]" (identifier "piVar13") (= "=") (subscript_expression "ppiVar17[1]" (identifier "ppiVar17") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "bVar2 = false;" (assignment_expression "bVar2 = false" (identifier "bVar2") (= "=") (false "false")) (; ";")) (expression_statement "piVar11 = piVar13;" (assignment_expression "piVar11 = piVar13" (identifier "piVar11") (= "=") (identifier "piVar13")) (; ";")) (do_statement "do {\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    } while (piVar13 + (int)piVar20 * 3 != piVar11);" (do "do") (compound_statement "{\n      piVar1 = piVar11 + 1;\n      piVar11 = piVar11 + 3;\n      if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }\n    }" ({ "{") (expression_statement "piVar1 = piVar11 + 1;" (assignment_expression "piVar1 = piVar11 + 1" (identifier "piVar1") (= "=") (binary_expression "piVar11 + 1" (identifier "piVar11") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "piVar11 = piVar11 + 3;" (assignment_expression "piVar11 = piVar11 + 3" (identifier "piVar11") (= "=") (binary_expression "piVar11 + 3" (identifier "piVar11") (+ "+") (number_literal "3"))) (; ";")) (if_statement "if (*(char *)piVar1 == '@') {\n        bVar2 = true;\n      }" (if "if") (parenthesized_expression "(*(char *)piVar1 == '@')" (( "(") (binary_expression "*(char *)piVar1 == '@'" (pointer_expression "*(char *)piVar1" (* "*") (cast_expression "(char *)piVar1" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "piVar1"))) (== "==") (char_literal "'@'" (' "'") (character "@") (' "'"))) () ")")) (compound_statement "{\n        bVar2 = true;\n      }" ({ "{") (expression_statement "bVar2 = true;" (assignment_expression "bVar2 = true" (identifier "bVar2") (= "=") (true "true")) (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "(piVar13 + (int)piVar20 * 3 != piVar11)" (( "(") (binary_expression "piVar13 + (int)piVar20 * 3 != piVar11" (binary_expression "piVar13 + (int)piVar20 * 3" (identifier "piVar13") (+ "+") (binary_expression "(int)piVar20 * 3" (cast_expression "(int)piVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar20")) (* "*") (number_literal "3"))) (!= "!=") (identifier "piVar11")) () ")")) (; ";")) (expression_statement "param_4 = (int *)0x0;" (assignment_expression "param_4 = (int *)0x0" (identifier "param_4") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "uVar22 = 0;" (assignment_expression "uVar22 = 0" (identifier "uVar22") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" (identifier "iVar7") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_000993bc:\n    piVar13 = (int *)((int)piVar13 + (int)param_4);" (statement_identifier "LAB_000993bc") (: ":") (expression_statement "piVar13 = (int *)((int)piVar13 + (int)param_4);" (assignment_expression "piVar13 = (int *)((int)piVar13 + (int)param_4)" (identifier "piVar13") (= "=") (cast_expression "(int *)((int)piVar13 + (int)param_4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar13 + (int)param_4)" (( "(") (binary_expression "(int)piVar13 + (int)param_4" (cast_expression "(int)piVar13" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar13")) (+ "+") (cast_expression "(int)param_4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_4"))) () ")")))) (; ";"))) (if_statement "if (!bVar2) {\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }" (if "if") (parenthesized_expression "(!bVar2)" (( "(") (unary_expression "!bVar2" (! "!") (identifier "bVar2")) () ")")) (compound_statement "{\n      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\n      if (iVar8 != 0) goto LAB_000993d8;\n      if (bVar15 != 2) goto LAB_00099394;\n      if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }\n      param_4 = (int *)0x1;\n      ppiVar17[5] = (int *)0x1;\n      piVar24 = *(int **)(pcVar28 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);\n      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;\n      pbVar19 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;\n      *(undefined8 *)(ppiVar17 + 10) = uVar30;\n      ppiVar17[0xd] = (int *)0x1;\n      ppiVar17[0xc] = (int *)0x0;\n      ppiVar17[0xe] = (int *)0x1;\n      ppbVar12 = (byte **)0x0;\n      goto LAB_000994e0;\n    }" ({ "{") (if_statement "if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;" (if "if") (parenthesized_expression "(*(char *)((int)piVar13 + 5) == '\0')" (( "(") (binary_expression "*(char *)((int)piVar13 + 5) == '\0'" (pointer_expression "*(char *)((int)piVar13 + 5)" (* "*") (cast_expression "(char *)((int)piVar13 + 5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar13 + 5)" (( "(") (binary_expression "(int)piVar13 + 5" (cast_expression "(int)piVar13" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar13")) (+ "+") (number_literal "5")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_0009939c;" (goto "goto") (statement_identifier "LAB_0009939c") (; ";"))) (expression_statement "iVar8 = *piVar13;" (assignment_expression "iVar8 = *piVar13" (identifier "iVar8") (= "=") (pointer_expression "*piVar13" (* "*") (identifier "piVar13"))) (; ";")) (expression_statement "bVar15 = *(byte *)(piVar13 + 1);" (assignment_expression "bVar15 = *(byte *)(piVar13 + 1)" (identifier "bVar15") (= "=") (pointer_expression "*(byte *)(piVar13 + 1)" (* "*") (cast_expression "(byte *)(piVar13 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13 + 1)" (( "(") (binary_expression "piVar13 + 1" (identifier "piVar13") (+ "+") (number_literal "1")) () ")"))))) (; ";")) (if_statement "if (iVar8 != 0) goto LAB_000993d8;" (if "if") (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000993d8;" (goto "goto") (statement_identifier "LAB_000993d8") (; ";"))) (if_statement "if (bVar15 != 2) goto LAB_00099394;" (if "if") (parenthesized_expression "(bVar15 != 2)" (( "(") (binary_expression "bVar15 != 2" (identifier "bVar15") (!= "!=") (number_literal "2")) () ")")) (goto_statement "goto LAB_00099394;" (goto "goto") (statement_identifier "LAB_00099394") (; ";"))) (if_statement "if (iVar7 == 0) {\n        iVar8 = 0;\n      }\n      else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }" (if "if") (parenthesized_expression "(iVar7 == 0)" (( "(") (binary_expression "iVar7 == 0" (identifier "iVar7") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iVar8 = 0;\n      }" ({ "{") (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" (identifier "iVar8") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }" (else "else") (compound_statement "{\n        iVar10 = 0;\n        do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);\n        iVar8 = iVar8 * 8;\n      }" ({ "{") (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" (identifier "iVar10") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        } while (iVar8 != iVar7);" (do "do") (compound_statement "{\n          iVar8 = iVar10 + 1;\n          ppiVar17[4][iVar10 * 2] = 0;\n          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;\n          iVar10 = iVar8;\n        }" ({ "{") (expression_statement "iVar8 = iVar10 + 1;" (assignment_expression "iVar8 = iVar10 + 1" (identifier "iVar8") (= "=") (binary_expression "iVar10 + 1" (identifier "iVar10") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "ppiVar17[4][iVar10 * 2] = 0;" (assignment_expression "ppiVar17[4][iVar10 * 2] = 0" (subscript_expression "ppiVar17[4][iVar10 * 2]" (subscript_expression "ppiVar17[4]" (identifier "ppiVar17") ([ "[") (number_literal "4") (] "]")) ([ "[") (binary_expression "iVar10 * 2" (identifier "iVar10") (* "*") (number_literal "2")) (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;" (assignment_expression "*(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0" (pointer_expression "*(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1)" (* "*") (cast_expression "(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(ppiVar17[4] + iVar10 * 2 + 1)" (( "(") (binary_expression "ppiVar17[4] + iVar10 * 2 + 1" (binary_expression "ppiVar17[4] + iVar10 * 2" (subscript_expression "ppiVar17[4]" (identifier "ppiVar17") ([ "[") (number_literal "4") (] "]")) (+ "+") (binary_expression "iVar10 * 2" (identifier "iVar10") (* "*") (number_literal "2"))) (+ "+") (number_literal "1")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar10 = iVar8;" (assignment_expression "iVar10 = iVar8" (identifier "iVar10") (= "=") (identifier "iVar8")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar8 != iVar7)" (( "(") (binary_expression "iVar8 != iVar7" (identifier "iVar8") (!= "!=") (identifier "iVar7")) () ")")) (; ";")) (expression_statement "iVar8 = iVar8 * 8;" (assignment_expression "iVar8 = iVar8 * 8" (identifier "iVar8") (= "=") (binary_expression "iVar8 * 8" (identifier "iVar8") (* "*") (number_literal "8"))) (; ";")) (} "}")))) (expression_statement "param_4 = (int *)0x1;" (assignment_expression "param_4 = (int *)0x1" (identifier "param_4") (= "=") (cast_expression "(int *)0x1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "ppiVar17[5] = (int *)0x1;" (assignment_expression "ppiVar17[5] = (int *)0x1" (subscript_expression "ppiVar17[5]" (identifier "ppiVar17") ([ "[") (number_literal "5") (] "]")) (= "=") (cast_expression "(int *)0x1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "piVar24 = *(int **)(pcVar28 + 0xc23f4);" (assignment_expression "piVar24 = *(int **)(pcVar28 + 0xc23f4)" (identifier "piVar24") (= "=") (pointer_expression "*(int **)(pcVar28 + 0xc23f4)" (* "*") (cast_expression "(int **)(pcVar28 + 0xc23f4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0xc23f4)" (( "(") (binary_expression "pcVar28 + 0xc23f4" (identifier "pcVar28") (+ "+") (number_literal "0xc23f4")) () ")"))))) (; ";")) (expression_statement "uVar30 = *(undefined8 *)(piVar24 + -0x1de2);" (assignment_expression "uVar30 = *(undefined8 *)(piVar24 + -0x1de2)" (identifier "uVar30") (= "=") (pointer_expression "*(undefined8 *)(piVar24 + -0x1de2)" (* "*") (cast_expression "(undefined8 *)(piVar24 + -0x1de2)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar24 + -0x1de2)" (( "(") (binary_expression "piVar24 + -0x1de2" (identifier "piVar24") (+ "+") (number_literal "-0x1de2")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;" (assignment_expression "*(undefined4 *)((int)ppiVar17[4] + iVar8) = 1" (pointer_expression "*(undefined4 *)((int)ppiVar17[4] + iVar8)" (* "*") (cast_expression "(undefined4 *)((int)ppiVar17[4] + iVar8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppiVar17[4] + iVar8)" (( "(") (binary_expression "(int)ppiVar17[4] + iVar8" (cast_expression "(int)ppiVar17[4]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "ppiVar17[4]" (identifier "ppiVar17") ([ "[") (number_literal "4") (] "]"))) (+ "+") (identifier "iVar8")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "pbVar19 = (byte *)0x0;" (assignment_expression "pbVar19 = (byte *)0x0" (identifier "pbVar19") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "*(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;" (assignment_expression "*(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1" (pointer_expression "*(undefined1 *)((int)ppiVar17[4] + iVar8 + 4)" (* "*") (cast_expression "(undefined1 *)((int)ppiVar17[4] + iVar8 + 4)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppiVar17[4] + iVar8 + 4)" (( "(") (binary_expression "(int)ppiVar17[4] + iVar8 + 4" (binary_expression "(int)ppiVar17[4] + iVar8" (cast_expression "(int)ppiVar17[4]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "ppiVar17[4]" (identifier "ppiVar17") ([ "[") (number_literal "4") (] "]"))) (+ "+") (identifier "iVar8")) (+ "+") (number_literal "4")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined8 *)(ppiVar17 + 10) = uVar30;" (assignment_expression "*(undefined8 *)(ppiVar17 + 10) = uVar30" (pointer_expression "*(undefined8 *)(ppiVar17 + 10)" (* "*") (cast_expression "(undefined8 *)(ppiVar17 + 10)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(ppiVar17 + 10)" (( "(") (binary_expression "ppiVar17 + 10" (identifier "ppiVar17") (+ "+") (number_literal "10")) () ")")))) (= "=") (identifier "uVar30")) (; ";")) (expression_statement "ppiVar17[0xd] = (int *)0x1;" (assignment_expression "ppiVar17[0xd] = (int *)0x1" (subscript_expression "ppiVar17[0xd]" (identifier "ppiVar17") ([ "[") (number_literal "0xd") (] "]")) (= "=") (cast_expression "(int *)0x1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "ppiVar17[0xc] = (int *)0x0;" (assignment_expression "ppiVar17[0xc] = (int *)0x0" (subscript_expression "ppiVar17[0xc]" (identifier "ppiVar17") ([ "[") (number_literal "0xc") (] "]")) (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppiVar17[0xe] = (int *)0x1;" (assignment_expression "ppiVar17[0xe] = (int *)0x1" (subscript_expression "ppiVar17[0xe]" (identifier "ppiVar17") ([ "[") (number_literal "0xe") (] "]")) (= "=") (cast_expression "(int *)0x1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "ppbVar12 = (byte **)0x0;" (assignment_expression "ppbVar12 = (byte **)0x0" (identifier "ppbVar12") (= "=") (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)piVar13 + 5) == '\0') {\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }" (if "if") (parenthesized_expression "(*(char *)((int)piVar13 + 5) == '\0')" (( "(") (binary_expression "*(char *)((int)piVar13 + 5) == '\0'" (pointer_expression "*(char *)((int)piVar13 + 5)" (* "*") (cast_expression "(char *)((int)piVar13 + 5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar13 + 5)" (( "(") (binary_expression "(int)piVar13 + 5" (cast_expression "(int)piVar13" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar13")) (+ "+") (number_literal "5")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_0009939c:\n      uVar23 = uVar22;\n      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;\n    }" ({ "{") (labeled_statement "LAB_0009939c:\n      uVar23 = uVar22;" (statement_identifier "LAB_0009939c") (: ":") (expression_statement "uVar23 = uVar22;" (assignment_expression "uVar23 = uVar22" (identifier "uVar23") (= "=") (identifier "uVar22")) (; ";"))) (if_statement "if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;" (if "if") (parenthesized_expression "((int)piVar20 <= iVar7 + 1)" (( "(") (binary_expression "(int)piVar20 <= iVar7 + 1" (cast_expression "(int)piVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar20")) (<= "<=") (binary_expression "iVar7 + 1" (identifier "iVar7") (+ "+") (number_literal "1"))) () ")")) (goto_statement "goto LAB_00099470;" (goto "goto") (statement_identifier "LAB_00099470") (; ";"))) (} "}")) (else_clause "else {\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }" (else "else") (compound_statement "{\n      iVar8 = *piVar13;\n      bVar15 = *(byte *)(piVar13 + 1);\nLAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar20 = ppiVar17[4];\n      uVar23 = uVar22 + 2;\n      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;\n      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';\n      piVar20[iVar7 * 2] = (int)uVar23 >> 1;\n      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;\n      piVar20 = *ppiVar17;\n      uVar22 = uVar23;\n      if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }\n    }" ({ "{") (expression_statement "iVar8 = *piVar13;" (assignment_expression "iVar8 = *piVar13" (identifier "iVar8") (= "=") (pointer_expression "*piVar13" (* "*") (identifier "piVar13"))) (; ";")) (expression_statement "bVar15 = *(byte *)(piVar13 + 1);" (assignment_expression "bVar15 = *(byte *)(piVar13 + 1)" (identifier "bVar15") (= "=") (pointer_expression "*(byte *)(piVar13 + 1)" (* "*") (cast_expression "(byte *)(piVar13 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar13 + 1)" (( "(") (binary_expression "piVar13 + 1" (identifier "piVar13") (+ "+") (number_literal "1")) () ")"))))) (; ";")) (labeled_statement "LAB_000993d8:\n      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" (statement_identifier "LAB_000993d8") (: ":") (if_statement "if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" (if "if") (parenthesized_expression "((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8))" (( "(") (binary_expression "(iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)" (parenthesized_expression "(iVar8 < 1)" (( "(") (binary_expression "iVar8 < 1" (identifier "iVar8") (< "<") (number_literal "1")) () ")")) (|| "||") (parenthesized_expression "((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)" (( "(") (binary_expression "(int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8" (binary_expression "(int)(uint)*(byte *)((int)ppiVar5 + 0x15)" (cast_expression "(int)(uint)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")"))) (* "*") (cast_expression "(byte *)((int)ppiVar5 + 0x15)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppiVar5 + 0x15)" (( "(") (binary_expression "(int)ppiVar5 + 0x15" (cast_expression "(int)ppiVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppiVar5")) (+ "+") (number_literal "0x15")) () ")")))) (< "<") (identifier "iVar8")) () ")"))) () ")")) (compound_statement "{\nLAB_00099394:\n        uVar21 = 0x46;\n        if (bVar15 != 0x40) goto LAB_0009939c;\n      }" ({ "{") (labeled_statement "LAB_00099394:\n        uVar21 = 0x46;" (statement_identifier "LAB_00099394") (: ":") (expression_statement "uVar21 = 0x46;" (assignment_expression "uVar21 = 0x46" (identifier "uVar21") (= "=") (number_literal "0x46")) (; ";"))) (if_statement "if (bVar15 != 0x40) goto LAB_0009939c;" (if "if") (parenthesized_expression "(bVar15 != 0x40)" (( "(") (binary_expression "bVar15 != 0x40" (identifier "bVar15") (!= "!=") (number_literal "0x40")) () ")")) (goto_statement "goto LAB_0009939c;" (goto "goto") (statement_identifier "LAB_0009939c") (; ";"))) (} "}")) (else_clause "else if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" (else "else") (if_statement "if (bVar15 == 8) {\n        uVar21 = 0x42;\n      }\n      else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" (if "if") (parenthesized_expression "(bVar15 == 8)" (( "(") (binary_expression "bVar15 == 8" (identifier "bVar15") (== "==") (number_literal "8")) () ")")) (compound_statement "{\n        uVar21 = 0x42;\n      }" ({ "{") (expression_statement "uVar21 = 0x42;" (assignment_expression "uVar21 = 0x42" (identifier "uVar21") (= "=") (number_literal "0x42")) (; ";")) (} "}")) (else_clause "else if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" (else "else") (if_statement "if (bVar15 < 9) {\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" (if "if") (parenthesized_expression "(bVar15 < 9)" (( "(") (binary_expression "bVar15 < 9" (identifier "bVar15") (< "<") (number_literal "9")) () ")")) (compound_statement "{\n        uVar21 = 0x41;\n        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;\n      }" ({ "{") (expression_statement "uVar21 = 0x41;" (assignment_expression "uVar21 = 0x41" (identifier "uVar21") (= "=") (number_literal "0x41")) (; ";")) (if_statement "if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;" (if "if") (parenthesized_expression "((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4))" (( "(") (binary_expression "(bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)" (parenthesized_expression "(bVar15 != 2)" (( "(") (binary_expression "bVar15 != 2" (identifier "bVar15") (!= "!=") (number_literal "2")) () ")")) (&& "&&") (parenthesized_expression "(uVar21 = 0x45, bVar15 != 4)" (( "(") (comma_expression "uVar21 = 0x45, bVar15 != 4" (assignment_expression "uVar21 = 0x45" (identifier "uVar21") (= "=") (number_literal "0x45")) (, ",") (binary_expression "bVar15 != 4" (identifier "bVar15") (!= "!=") (number_literal "4"))) () ")"))) () ")")) (goto_statement "goto LAB_0009939c;" (goto "goto") (statement_identifier "LAB_0009939c") (; ";"))) (} "}")) (else_clause "else {\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" (else "else") (compound_statement "{\n        uVar21 = 0x44;\n        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;\n      }" ({ "{") (expression_statement "uVar21 = 0x44;" (assignment_expression "uVar21 = 0x44" (identifier "uVar21") (= "=") (number_literal "0x44")) (; ";")) (if_statement "if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           ) goto LAB_0009939c;" (if "if") (parenthesized_expression "((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))\n           )" (( "(") (binary_expression "(bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))" (parenthesized_expression "(bVar15 != 0x20)" (( "(") (binary_expression "bVar15 != 0x20" (identifier "bVar15") (!= "!=") (number_literal "0x20")) () ")")) (&& "&&") (parenthesized_expression "((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))" (( "(") (parenthesized_expression "(uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10))" (( "(") (comma_expression "uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)" (assignment_expression "uVar21 = 0x46" (identifier "uVar21") (= "=") (number_literal "0x46")) (, ",") (binary_expression "bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)" (binary_expression "bVar15 != 0x40" (identifier "bVar15") (!= "!=") (number_literal "0x40")) (&& "&&") (parenthesized_expression "(uVar21 = 0x43, bVar15 != 0x10)" (( "(") (comma_expression "uVar21 = 0x43, bVar15 != 0x10" (assignment_expression "uVar21 = 0x43" (identifier "uVar21") (= "=") (number_literal "0x43")) (, ",") (binary_expression "bVar15 != 0x10" (identifier "bVar15") (!= "!=") (number_literal "0x10"))) () ")")))) () ")")) () ")"))) () ")")) (goto_statement "goto LAB_0009939c;" (goto "goto") (statement_identifier "LAB_0009939c") (; ";"))) (} "}"))))))))) (expression_statement "piVar20 = ppiVar17[4];" (assignment_expression "piVar20 = ppiVar17[4]" (identifier "piVar20") (= "=") (subscript_expression "ppiVar17[4]" (identifier "ppiVar17") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "uVar23 = uVar22 + 2;" (assignment_expression "uVar23 = uVar22 + 2" (identifier "uVar23") (= "=") (binary_expression "uVar22 + 2" (identifier "uVar22") (+ "+") (number_literal "2"))) (; ";")) (expression_statement "*(undefined1 *)((int)&local_c8 + uVar22) = uVar21;" (assignment_expression "*(undefined1 *)((int)&local_c8 + uVar22) = uVar21" (pointer_expression "*(undefined1 *)((int)&local_c8 + uVar22)" (* "*") (cast_expression "(undefined1 *)((int)&local_c8 + uVar22)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&local_c8 + uVar22)" (( "(") (binary_expression "(int)&local_c8 + uVar22" (cast_expression "(int)&local_c8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&local_c8" (& "&") (identifier "local_c8"))) (+ "+") (identifier "uVar22")) () ")")))) (= "=") (identifier "uVar21")) (; ";")) (expression_statement "*(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';" (assignment_expression "*(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/'" (pointer_expression "*(char *)((int)&local_c8 + uVar22 + 1)" (* "*") (cast_expression "(char *)((int)&local_c8 + uVar22 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&local_c8 + uVar22 + 1)" (( "(") (binary_expression "(int)&local_c8 + uVar22 + 1" (binary_expression "(int)&local_c8 + uVar22" (cast_expression "(int)&local_c8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&local_c8" (& "&") (identifier "local_c8"))) (+ "+") (identifier "uVar22")) (+ "+") (number_literal "1")) () ")")))) (= "=") (binary_expression "(char)*piVar13 + '/'" (cast_expression "(char)*piVar13" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (pointer_expression "*piVar13" (* "*") (identifier "piVar13"))) (+ "+") (char_literal "'/'" (' "'") (character "/") (' "'")))) (; ";")) (expression_statement "piVar20[iVar7 * 2] = (int)uVar23 >> 1;" (assignment_expression "piVar20[iVar7 * 2] = (int)uVar23 >> 1" (subscript_expression "piVar20[iVar7 * 2]" (identifier "piVar20") ([ "[") (binary_expression "iVar7 * 2" (identifier "iVar7") (* "*") (number_literal "2")) (] "]")) (= "=") (binary_expression "(int)uVar23 >> 1" (cast_expression "(int)uVar23" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar23")) (>> ">>") (number_literal "1"))) (; ";")) (expression_statement "*(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;" (assignment_expression "*(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1" (pointer_expression "*(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1)" (* "*") (cast_expression "(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(ppiVar17[4] + iVar7 * 2 + 1)" (( "(") (binary_expression "ppiVar17[4] + iVar7 * 2 + 1" (binary_expression "ppiVar17[4] + iVar7 * 2" (subscript_expression "ppiVar17[4]" (identifier "ppiVar17") ([ "[") (number_literal "4") (] "]")) (+ "+") (binary_expression "iVar7 * 2" (identifier "iVar7") (* "*") (number_literal "2"))) (+ "+") (number_literal "1")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "piVar20 = *ppiVar17;" (assignment_expression "piVar20 = *ppiVar17" (identifier "piVar20") (= "=") (pointer_expression "*ppiVar17" (* "*") (identifier "ppiVar17"))) (; ";")) (expression_statement "uVar22 = uVar23;" (assignment_expression "uVar22 = uVar23" (identifier "uVar22") (= "=") (identifier "uVar23")) (; ";")) (if_statement "if ((int)piVar20 <= iVar7 + 1) {\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }" (if "if") (parenthesized_expression "((int)piVar20 <= iVar7 + 1)" (( "(") (binary_expression "(int)piVar20 <= iVar7 + 1" (cast_expression "(int)piVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar20")) (<= "<=") (binary_expression "iVar7 + 1" (identifier "iVar7") (+ "+") (number_literal "1"))) () ")")) (compound_statement "{\nLAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);\n        ppiVar17[5] = (int *)0x2;\n        ppiVar17[7] = (int *)0x1;\n        uVar22 = uVar23;\n        if (uVar23 != 0) goto LAB_00099544;\n        goto LAB_00099480;\n      }" ({ "{") (labeled_statement "LAB_00099470:\n        pbVar19 = (byte *)(iVar7 + 1);" (statement_identifier "LAB_00099470") (: ":") (expression_statement "pbVar19 = (byte *)(iVar7 + 1);" (assignment_expression "pbVar19 = (byte *)(iVar7 + 1)" (identifier "pbVar19") (= "=") (cast_expression "(byte *)(iVar7 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar7 + 1)" (( "(") (binary_expression "iVar7 + 1" (identifier "iVar7") (+ "+") (number_literal "1")) () ")")))) (; ";"))) (expression_statement "ppiVar17[5] = (int *)0x2;" (assignment_expression "ppiVar17[5] = (int *)0x2" (subscript_expression "ppiVar17[5]" (identifier "ppiVar17") ([ "[") (number_literal "5") (] "]")) (= "=") (cast_expression "(int *)0x2" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x2"))) (; ";")) (expression_statement "ppiVar17[7] = (int *)0x1;" (assignment_expression "ppiVar17[7] = (int *)0x1" (subscript_expression "ppiVar17[7]" (identifier "ppiVar17") ([ "[") (number_literal "7") (] "]")) (= "=") (cast_expression "(int *)0x1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "uVar22 = uVar23;" (assignment_expression "uVar22 = uVar23" (identifier "uVar22") (= "=") (identifier "uVar23")) (; ";")) (if_statement "if (uVar23 != 0) goto LAB_00099544;" (if "if") (parenthesized_expression "(uVar23 != 0)" (( "(") (binary_expression "uVar23 != 0" (identifier "uVar23") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00099544;" (goto "goto") (statement_identifier "LAB_00099544") (; ";"))) (goto_statement "goto LAB_00099480;" (goto "goto") (statement_identifier "LAB_00099480") (; ";")) (} "}"))) (} "}")))) (expression_statement "param_4 = param_4 + 3;" (assignment_expression "param_4 = param_4 + 3" (identifier "param_4") (= "=") (binary_expression "param_4 + 3" (identifier "param_4") (+ "+") (number_literal "3"))) (; ";")) (if_statement "if ((int)uVar22 < 0x28) goto code_r0x000993b8;" (if "if") (parenthesized_expression "((int)uVar22 < 0x28)" (( "(") (binary_expression "(int)uVar22 < 0x28" (cast_expression "(int)uVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar22")) (< "<") (number_literal "0x28")) () ")")) (goto_statement "goto code_r0x000993b8;" (goto "goto") (statement_identifier "code_r0x000993b8") (; ";"))) (expression_statement "ppiVar17[5] = (int *)0x2;" (assignment_expression "ppiVar17[5] = (int *)0x2" (subscript_expression "ppiVar17[5]" (identifier "ppiVar17") ([ "[") (number_literal "5") (] "]")) (= "=") (cast_expression "(int *)0x2" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x2"))) (; ";")) (expression_statement "ppiVar17[7] = (int *)0x1;" (assignment_expression "ppiVar17[7] = (int *)0x1" (subscript_expression "ppiVar17[7]" (identifier "ppiVar17") ([ "[") (number_literal "7") (] "]")) (= "=") (cast_expression "(int *)0x1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (labeled_statement "LAB_00099544:\n    pbVar19 = (byte *)(iVar7 + 1);" (statement_identifier "LAB_00099544") (: ":") (expression_statement "pbVar19 = (byte *)(iVar7 + 1);" (assignment_expression "pbVar19 = (byte *)(iVar7 + 1)" (identifier "pbVar19") (= "=") (cast_expression "(byte *)(iVar7 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar7 + 1)" (( "(") (binary_expression "iVar7 + 1" (identifier "iVar7") (+ "+") (number_literal "1")) () ")")))) (; ";"))) (expression_statement "piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);" (assignment_expression "piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4)" (identifier "piVar20") (= "=") (cast_expression "(int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4)" (identifier "sqlite3_mprintf") (argument_list "(*(int *)(pcVar28 + 0xc2348) + 0x71f4)" (( "(") (binary_expression "*(int *)(pcVar28 + 0xc2348) + 0x71f4" (pointer_expression "*(int *)(pcVar28 + 0xc2348)" (* "*") (cast_expression "(int *)(pcVar28 + 0xc2348)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar28 + 0xc2348)" (( "(") (binary_expression "pcVar28 + 0xc2348" (identifier "pcVar28") (+ "+") (number_literal "0xc2348")) () ")")))) (+ "+") (number_literal "0x71f4")) () ")"))))) (; ";")) (expression_statement "ppiVar17[6] = piVar20;" (assignment_expression "ppiVar17[6] = piVar20" (subscript_expression "ppiVar17[6]" (identifier "ppiVar17") ([ "[") (number_literal "6") (] "]")) (= "=") (identifier "piVar20")) (; ";")) (if_statement "if (piVar20 != (int *)0x0) {\n      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }" (if "if") (parenthesized_expression "(piVar20 != (int *)0x0)" (( "(") (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      uVar23 = (int)uVar22 >> 1;\n      goto LAB_00099480;\n    }" ({ "{") (expression_statement "uVar23 = (int)uVar22 >> 1;" (assignment_expression "uVar23 = (int)uVar22 >> 1" (identifier "uVar23") (= "=") (binary_expression "(int)uVar22 >> 1" (cast_expression "(int)uVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar22")) (>> ">>") (number_literal "1"))) (; ";")) (goto_statement "goto LAB_00099480;" (goto "goto") (statement_identifier "LAB_00099480") (; ";")) (} "}"))) (expression_statement "ppbVar12 = (byte **)&DAT_00000007;" (assignment_expression "ppbVar12 = (byte **)&DAT_00000007" (identifier "ppbVar12") (= "=") (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 (local_9c == *piVar26) {\n    return ppbVar12;\n  }" (statement_identifier "LAB_000994e0") (: ":") (if_statement "if (local_9c == *piVar26) {\n    return ppbVar12;\n  }" (if "if") (parenthesized_expression "(local_9c == *piVar26)" (( "(") (binary_expression "local_9c == *piVar26" (identifier "local_9c") (== "==") (pointer_expression "*piVar26" (* "*") (identifier "piVar26"))) () ")")) (compound_statement "{\n    return ppbVar12;\n  }" ({ "{") (return_statement "return ppbVar12;" (return "return") (identifier "ppbVar12") (; ";")) (} "}")))) (expression_statement "pcVar28 = *(code **)(local_d0 + -0x7ba0);" (assignment_expression "pcVar28 = *(code **)(local_d0 + -0x7ba0)" (identifier "pcVar28") (= "=") (pointer_expression "*(code **)(local_d0 + -0x7ba0)" (* "*") (cast_expression "(code **)(local_d0 + -0x7ba0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_d0 + -0x7ba0)" (( "(") (binary_expression "local_d0 + -0x7ba0" (identifier "local_d0") (+ "+") (number_literal "-0x7ba0")) () ")"))))) (; ";")) (expression_statement "iVar7 = local_9c;" (assignment_expression "iVar7 = local_9c" (identifier "iVar7") (= "=") (identifier "local_9c")) (; ";")) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" (( "(") (pointer_expression "*pcVar28" (* "*") (identifier "pcVar28")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "ppbVar4 = &pbStack_d8;" (assignment_expression "ppbVar4 = &pbStack_d8" (identifier "ppbVar4") (= "=") (pointer_expression "&pbStack_d8" (& "&") (identifier "pbStack_d8"))) (; ";")) (expression_statement "puVar25 = *(undefined4 **)(pcVar28 + 0xc2410);" (assignment_expression "puVar25 = *(undefined4 **)(pcVar28 + 0xc2410)" (identifier "puVar25") (= "=") (pointer_expression "*(undefined4 **)(pcVar28 + 0xc2410)" (* "*") (cast_expression "(undefined4 **)(pcVar28 + 0xc2410)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0xc2410)" (( "(") (binary_expression "pcVar28 + 0xc2410" (identifier "pcVar28") (+ "+") (number_literal "0xc2410")) () ")"))))) (; ";")) (expression_statement "ppbVar18 = (byte **)*puVar25;" (assignment_expression "ppbVar18 = (byte **)*puVar25" (identifier "ppbVar18") (= "=") (cast_expression "(byte **)*puVar25" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*puVar25" (* "*") (identifier "puVar25")))) (; ";")) (expression_statement "ppbVar12 = ppbVar18;" (assignment_expression "ppbVar12 = ppbVar18" (identifier "ppbVar12") (= "=") (identifier "ppbVar18")) (; ";")) (expression_statement "pbStack_d8 = pbVar19;" (assignment_expression "pbStack_d8 = pbVar19" (identifier "pbStack_d8") (= "=") (identifier "pbVar19")) (; ";")) (expression_statement "piStack_d4 = param_4;" (assignment_expression "piStack_d4 = param_4" (identifier "piStack_d4") (= "=") (identifier "param_4")) (; ";")) (if_statement "if ((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))) goto LAB_0009967c;" (if "if") (parenthesized_expression "((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30)))" (( "(") (binary_expression "(*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))" (parenthesized_expression "(*(int *)(iVar7 + 0x28) != 0)" (( "(") (binary_expression "*(int *)(iVar7 + 0x28) != 0" (pointer_expression "*(int *)(iVar7 + 0x28)" (* "*") (cast_expression "(int *)(iVar7 + 0x28)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar7 + 0x28)" (( "(") (binary_expression "iVar7 + 0x28" (identifier "iVar7") (+ "+") (number_literal "0x28")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(99 < *(int *)(iVar7 + 0x30))" (( "(") (binary_expression "99 < *(int *)(iVar7 + 0x30)" (number_literal "99") (< "<") (pointer_expression "*(int *)(iVar7 + 0x30)" (* "*") (cast_expression "(int *)(iVar7 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar7 + 0x30)" (( "(") (binary_expression "iVar7 + 0x30" (identifier "iVar7") (+ "+") (number_literal "0x30")) () ")"))))) () ")"))) () ")")) (goto_statement "goto LAB_0009967c;" (goto "goto") (statement_identifier "LAB_0009967c") (; ";"))) (expression_statement "piVar20 = (int *)sqlite3_vmprintf();" (assignment_expression "piVar20 = (int *)sqlite3_vmprintf()" (identifier "piVar20") (= "=") (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 (piVar20 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;\n  }\n  else {\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }" (if "if") (parenthesized_expression "(piVar20 == (int *)0x0)" (( "(") (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 "{\nLAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;\n  }" ({ "{") (labeled_statement "LAB_000996f0:\n    *(undefined4 *)(iVar7 + 0x28) = 7;" (statement_identifier "LAB_000996f0") (: ":") (expression_statement "*(undefined4 *)(iVar7 + 0x28) = 7;" (assignment_expression "*(undefined4 *)(iVar7 + 0x28) = 7" (pointer_expression "*(undefined4 *)(iVar7 + 0x28)" (* "*") (cast_expression "(undefined4 *)(iVar7 + 0x28)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar7 + 0x28)" (( "(") (binary_expression "iVar7 + 0x28" (identifier "iVar7") (+ "+") (number_literal "0x28")) () ")")))) (= "=") (number_literal "7")) (; ";"))) (} "}")) (else_clause "else {\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }" (else "else") (compound_statement "{\n    ppbVar4 = *(byte ***)(iVar7 + 0x2c);\n    if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }\n    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);\n    iVar8 = sqlite3_mprintf();\n    *(int *)(iVar7 + 0x2c) = iVar8;\n    param_4 = piVar20;\n    if (iVar8 == 0) goto LAB_000996f0;\n  }" ({ "{") (expression_statement "ppbVar4 = *(byte ***)(iVar7 + 0x2c);" (assignment_expression "ppbVar4 = *(byte ***)(iVar7 + 0x2c)" (identifier "ppbVar4") (= "=") (pointer_expression "*(byte ***)(iVar7 + 0x2c)" (* "*") (cast_expression "(byte ***)(iVar7 + 0x2c)" (( "(") (type_descriptor "byte ***" (type_identifier "byte") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(iVar7 + 0x2c)" (( "(") (binary_expression "iVar7 + 0x2c" (identifier "iVar7") (+ "+") (number_literal "0x2c")) () ")"))))) (; ";")) (if_statement "if (ppbVar4 == (byte **)0x0) {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }" (if "if") (parenthesized_expression "(ppbVar4 == (byte **)0x0)" (( "(") (binary_expression "ppbVar4 == (byte **)0x0" (identifier "ppbVar4") (== "==") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);\n    }" ({ "{") (expression_statement "pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);" (assignment_expression "pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4)" (identifier "pbVar19") (= "=") (cast_expression "(byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4)" (( "(") (binary_expression "*(int *)(pcVar28 + 0xc1fcc) + 0x53f4" (pointer_expression "*(int *)(pcVar28 + 0xc1fcc)" (* "*") (cast_expression "(int *)(pcVar28 + 0xc1fcc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar28 + 0xc1fcc)" (( "(") (binary_expression "pcVar28 + 0xc1fcc" (identifier "pcVar28") (+ "+") (number_literal "0xc1fcc")) () ")")))) (+ "+") (number_literal "0x53f4")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }" (else "else") (compound_statement "{\n      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);\n    }" ({ "{") (expression_statement "pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);" (assignment_expression "pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48)" (identifier "pbVar19") (= "=") (cast_expression "(byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48)" (( "(") (binary_expression "*(int *)(pcVar28 + 0xc1fcc) + 0x5c48" (pointer_expression "*(int *)(pcVar28 + 0xc1fcc)" (* "*") (cast_expression "(int *)(pcVar28 + 0xc1fcc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar28 + 0xc1fcc)" (( "(") (binary_expression "pcVar28 + 0xc1fcc" (identifier "pcVar28") (+ "+") (number_literal "0xc1fcc")) () ")")))) (+ "+") (number_literal "0x5c48")) () ")")))) (; ";")) (} "}")))) (expression_statement "piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);" (assignment_expression "piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c)" (identifier "piVar24") (= "=") (cast_expression "(int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar28 + 0xc1fe0) - 0x741c)" (( "(") (binary_expression "*(int *)(pcVar28 + 0xc1fe0) - 0x741c" (pointer_expression "*(int *)(pcVar28 + 0xc1fe0)" (* "*") (cast_expression "(int *)(pcVar28 + 0xc1fe0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar28 + 0xc1fe0)" (( "(") (binary_expression "pcVar28 + 0xc1fe0" (identifier "pcVar28") (+ "+") (number_literal "0xc1fe0")) () ")")))) (- "-") (number_literal "0x741c")) () ")")))) (; ";")) (expression_statement "iVar8 = sqlite3_mprintf();" (assignment_expression "iVar8 = sqlite3_mprintf()" (identifier "iVar8") (= "=") (call_expression "sqlite3_mprintf()" (identifier "sqlite3_mprintf") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(int *)(iVar7 + 0x2c) = iVar8;" (assignment_expression "*(int *)(iVar7 + 0x2c) = iVar8" (pointer_expression "*(int *)(iVar7 + 0x2c)" (* "*") (cast_expression "(int *)(iVar7 + 0x2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar7 + 0x2c)" (( "(") (binary_expression "iVar7 + 0x2c" (identifier "iVar7") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (identifier "iVar8")) (; ";")) (expression_statement "param_4 = piVar20;" (assignment_expression "param_4 = piVar20" (identifier "param_4") (= "=") (identifier "piVar20")) (; ";")) (if_statement "if (iVar8 == 0) goto LAB_000996f0;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000996f0;" (goto "goto") (statement_identifier "LAB_000996f0") (; ";"))) (} "}")))) (expression_statement "*(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1;" (assignment_expression "*(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1" (pointer_expression "*(int *)(iVar7 + 0x30)" (* "*") (cast_expression "(int *)(iVar7 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar7 + 0x30)" (( "(") (binary_expression "iVar7 + 0x30" (identifier "iVar7") (+ "+") (number_literal "0x30")) () ")")))) (= "=") (binary_expression "*(int *)(iVar7 + 0x30) + 1" (pointer_expression "*(int *)(iVar7 + 0x30)" (* "*") (cast_expression "(int *)(iVar7 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar7 + 0x30)" (( "(") (binary_expression "iVar7 + 0x30" (identifier "iVar7") (+ "+") (number_literal "0x30")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "ppbVar12 = ppbVar4;" (assignment_expression "ppbVar12 = ppbVar4" (identifier "ppbVar12") (= "=") (identifier "ppbVar4")) (; ";")) (labeled_statement "LAB_0009967c:\n  ppbVar4 = (byte **)*puVar25;" (statement_identifier "LAB_0009967c") (: ":") (expression_statement "ppbVar4 = (byte **)*puVar25;" (assignment_expression "ppbVar4 = (byte **)*puVar25" (identifier "ppbVar4") (= "=") (cast_expression "(byte **)*puVar25" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*puVar25" (* "*") (identifier "puVar25")))) (; ";"))) (if_statement "if (ppbVar18 == ppbVar4) {\n    return ppbVar4;\n  }" (if "if") (parenthesized_expression "(ppbVar18 == ppbVar4)" (( "(") (binary_expression "ppbVar18 == ppbVar4" (identifier "ppbVar18") (== "==") (identifier "ppbVar4")) () ")")) (compound_statement "{\n    return ppbVar4;\n  }" ({ "{") (return_statement "return ppbVar4;" (return "return") (identifier "ppbVar4") (; ";")) (} "}"))) (expression_statement "pcVar28 = *(code **)(pcVar28 + 0xc23f4);" (assignment_expression "pcVar28 = *(code **)(pcVar28 + 0xc23f4)" (identifier "pcVar28") (= "=") (pointer_expression "*(code **)(pcVar28 + 0xc23f4)" (* "*") (cast_expression "(code **)(pcVar28 + 0xc23f4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0xc23f4)" (( "(") (binary_expression "pcVar28 + 0xc23f4" (identifier "pcVar28") (+ "+") (number_literal "0xc23f4")) () ")"))))) (; ";")) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" (( "(") (pointer_expression "*pcVar28" (* "*") (identifier "pcVar28")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "piVar20 = *(int **)(pcVar28 + 0xc231c);" (assignment_expression "piVar20 = *(int **)(pcVar28 + 0xc231c)" (identifier "piVar20") (= "=") (pointer_expression "*(int **)(pcVar28 + 0xc231c)" (* "*") (cast_expression "(int **)(pcVar28 + 0xc231c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0xc231c)" (( "(") (binary_expression "pcVar28 + 0xc231c" (identifier "pcVar28") (+ "+") (number_literal "0xc231c")) () ")"))))) (; ";")) (expression_statement "ppbStack_128 = (byte **)0x0;" (assignment_expression "ppbStack_128 = (byte **)0x0" (identifier "ppbStack_128") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "iVar7 = *piVar20;" (assignment_expression "iVar7 = *piVar20" (identifier "iVar7") (= "=") (pointer_expression "*piVar20" (* "*") (identifier "piVar20"))) (; ";")) (expression_statement "ppbVar4 = (byte **)0x0;" (assignment_expression "ppbVar4 = (byte **)0x0" (identifier "ppbVar4") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (ppbVar12 != (byte **)0x0) {\n    if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }\n  }" (if "if") (parenthesized_expression "(ppbVar12 != (byte **)0x0)" (( "(") (binary_expression "ppbVar12 != (byte **)0x0" (identifier "ppbVar12") (!= "!=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }\n  }" ({ "{") (if_statement "if (*(char *)ppbVar12 == '$') {\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }\n    else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }" (if "if") (parenthesized_expression "(*(char *)ppbVar12 == '$')" (( "(") (binary_expression "*(char *)ppbVar12 == '$'" (pointer_expression "*(char *)ppbVar12" (* "*") (cast_expression "(char *)ppbVar12" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "ppbVar12"))) (== "==") (char_literal "'$'" (' "'") (character "$") (' "'"))) () ")")) (compound_statement "{\n      pbVar19 = (byte *)((int)ppbVar12 + 1);\n      ppbVar4 = (byte **)FUN_0008b18c();\n      ppbVar12 = ppbStack_128;\n    }" ({ "{") (expression_statement "pbVar19 = (byte *)((int)ppbVar12 + 1);" (assignment_expression "pbVar19 = (byte *)((int)ppbVar12 + 1)" (identifier "pbVar19") (= "=") (cast_expression "(byte *)((int)ppbVar12 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppbVar12 + 1)" (( "(") (binary_expression "(int)ppbVar12 + 1" (cast_expression "(int)ppbVar12" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppbVar12")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "ppbVar4 = (byte **)FUN_0008b18c();" (assignment_expression "ppbVar4 = (byte **)FUN_0008b18c()" (identifier "ppbVar4") (= "=") (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 "ppbVar12 = ppbStack_128;" (assignment_expression "ppbVar12 = ppbStack_128" (identifier "ppbVar12") (= "=") (identifier "ppbStack_128")) (; ";")) (} "}")) (else_clause "else {\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }" (else "else") (compound_statement "{\n      iVar8 = *(int *)(pcVar28 + 0xc1eec);\n      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';\n      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);\n      if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }\n    }" ({ "{") (expression_statement "iVar8 = *(int *)(pcVar28 + 0xc1eec);" (assignment_expression "iVar8 = *(int *)(pcVar28 + 0xc1eec)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(pcVar28 + 0xc1eec)" (* "*") (cast_expression "(int *)(pcVar28 + 0xc1eec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar28 + 0xc1eec)" (( "(") (binary_expression "pcVar28 + 0xc1eec" (identifier "pcVar28") (+ "+") (number_literal "0xc1eec")) () ")"))))) (; ";")) (expression_statement "*(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';" (assignment_expression "*(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01'" (pointer_expression "*(char *)((int)piVar24 + 0x15)" (* "*") (cast_expression "(char *)((int)piVar24 + 0x15)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar24 + 0x15)" (( "(") (binary_expression "(int)piVar24 + 0x15" (cast_expression "(int)piVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar24")) (+ "+") (number_literal "0x15")) () ")")))) (= "=") (binary_expression "*(char *)((int)piVar24 + 0x15) + '\x01'" (pointer_expression "*(char *)((int)piVar24 + 0x15)" (* "*") (cast_expression "(char *)((int)piVar24 + 0x15)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar24 + 0x15)" (( "(") (binary_expression "(int)piVar24 + 0x15" (cast_expression "(int)piVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar24")) (+ "+") (number_literal "0x15")) () ")")))) (+ "+") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'")))) (; ";")) (expression_statement "ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);" (assignment_expression "ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414)" (identifier "ppbVar4") (= "=") (cast_expression "(byte **)sqlite3_mprintf(iVar8 + -0x7414)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "sqlite3_mprintf(iVar8 + -0x7414)" (identifier "sqlite3_mprintf") (argument_list "(iVar8 + -0x7414)" (( "(") (binary_expression "iVar8 + -0x7414" (identifier "iVar8") (+ "+") (number_literal "-0x7414")) () ")"))))) (; ";")) (if_statement "if (ppbVar4 == (byte **)0x0) {\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }\n      else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }" (if "if") (parenthesized_expression "(ppbVar4 == (byte **)0x0)" (( "(") (binary_expression "ppbVar4 == (byte **)0x0" (identifier "ppbVar4") (== "==") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        (**(code **)(pcVar28 + 0xc2074))(param_4);\n        ppbVar4 = (byte **)0x0;\n      }" ({ "{") (expression_statement "(**(code **)(pcVar28 + 0xc2074))(param_4);" (call_expression "(**(code **)(pcVar28 + 0xc2074))(param_4)" (parenthesized_expression "(**(code **)(pcVar28 + 0xc2074))" (( "(") (pointer_expression "**(code **)(pcVar28 + 0xc2074)" (* "*") (pointer_expression "*(code **)(pcVar28 + 0xc2074)" (* "*") (cast_expression "(code **)(pcVar28 + 0xc2074)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0xc2074)" (( "(") (binary_expression "pcVar28 + 0xc2074" (identifier "pcVar28") (+ "+") (number_literal "0xc2074")) () ")"))))) () ")")) (argument_list "(param_4)" (( "(") (identifier "param_4") () ")"))) (; ";")) (expression_statement "ppbVar4 = (byte **)0x0;" (assignment_expression "ppbVar4 = (byte **)0x0" (identifier "ppbVar4") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (} "}")) (else_clause "else {\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }" (else "else") (compound_statement "{\n        pbVar19 = (byte *)0xffffffff;\n        ppbVar12 = ppbVar4;\n        (**(code **)(pcVar28 + 0xc2060))(param_4);\n        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);\n        ppbVar4 = (byte **)0x0;\n      }" ({ "{") (expression_statement "pbVar19 = (byte *)0xffffffff;" (assignment_expression "pbVar19 = (byte *)0xffffffff" (identifier "pbVar19") (= "=") (cast_expression "(byte *)0xffffffff" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "ppbVar12 = ppbVar4;" (assignment_expression "ppbVar12 = ppbVar4" (identifier "ppbVar12") (= "=") (identifier "ppbVar4")) (; ";")) (expression_statement "(**(code **)(pcVar28 + 0xc2060))(param_4);" (call_expression "(**(code **)(pcVar28 + 0xc2060))(param_4)" (parenthesized_expression "(**(code **)(pcVar28 + 0xc2060))" (( "(") (pointer_expression "**(code **)(pcVar28 + 0xc2060)" (* "*") (pointer_expression "*(code **)(pcVar28 + 0xc2060)" (* "*") (cast_expression "(code **)(pcVar28 + 0xc2060)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0xc2060)" (( "(") (binary_expression "pcVar28 + 0xc2060" (identifier "pcVar28") (+ "+") (number_literal "0xc2060")) () ")"))))) () ")")) (argument_list "(param_4)" (( "(") (identifier "param_4") () ")"))) (; ";")) (expression_statement "(**(code **)(pcVar28 + 0xc1f10))(ppbVar4);" (call_expression "(**(code **)(pcVar28 + 0xc1f10))(ppbVar4)" (parenthesized_expression "(**(code **)(pcVar28 + 0xc1f10))" (( "(") (pointer_expression "**(code **)(pcVar28 + 0xc1f10)" (* "*") (pointer_expression "*(code **)(pcVar28 + 0xc1f10)" (* "*") (cast_expression "(code **)(pcVar28 + 0xc1f10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0xc1f10)" (( "(") (binary_expression "pcVar28 + 0xc1f10" (identifier "pcVar28") (+ "+") (number_literal "0xc1f10")) () ")"))))) () ")")) (argument_list "(ppbVar4)" (( "(") (identifier "ppbVar4") () ")"))) (; ";")) (expression_statement "ppbVar4 = (byte **)0x0;" (assignment_expression "ppbVar4 = (byte **)0x0" (identifier "ppbVar4") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (} "}")))) (} "}")))) (} "}"))) (if_statement "if (iVar7 == *piVar20) {\n    return ppbVar4;\n  }" (if "if") (parenthesized_expression "(iVar7 == *piVar20)" (( "(") (binary_expression "iVar7 == *piVar20" (identifier "iVar7") (== "==") (pointer_expression "*piVar20" (* "*") (identifier "piVar20"))) () ")")) (compound_statement "{\n    return ppbVar4;\n  }" ({ "{") (return_statement "return ppbVar4;" (return "return") (identifier "ppbVar4") (; ";")) (} "}"))) (expression_statement "pcVar28 = *(code **)(pcVar28 + 0xc2300);" (assignment_expression "pcVar28 = *(code **)(pcVar28 + 0xc2300)" (identifier "pcVar28") (= "=") (pointer_expression "*(code **)(pcVar28 + 0xc2300)" (* "*") (cast_expression "(code **)(pcVar28 + 0xc2300)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0xc2300)" (( "(") (binary_expression "pcVar28 + 0xc2300" (identifier "pcVar28") (+ "+") (number_literal "0xc2300")) () ")"))))) (; ";")) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" (( "(") (pointer_expression "*pcVar28" (* "*") (identifier "pcVar28")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "ppbVar4 = (byte **)FUN_0008ad48();" (assignment_expression "ppbVar4 = (byte **)FUN_0008ad48()" (identifier "ppbVar4") (= "=") (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 (ppbVar4 != (byte **)0x0) {\n    if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }\n    if (ppbVar4 != (byte **)0x0) {\n                    \n                    \n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }\n  }" (if "if") (parenthesized_expression "(ppbVar4 != (byte **)0x0)" (( "(") (binary_expression "ppbVar4 != (byte **)0x0" (identifier "ppbVar4") (!= "!=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }\n    if (ppbVar4 != (byte **)0x0) {\n                    \n                    \n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }\n  }" ({ "{") (if_statement "if (ppbVar12 == (byte **)&SUB_00000002) {\n      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }\n    else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }" (if "if") (parenthesized_expression "(ppbVar12 == (byte **)&SUB_00000002)" (( "(") (binary_expression "ppbVar12 == (byte **)&SUB_00000002" (identifier "ppbVar12") (== "==") (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      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));\n      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);\n    }" ({ "{") (expression_statement "uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));" (assignment_expression "uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4))" (identifier "uVar6") (= "=") (call_expression "(**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4))" (parenthesized_expression "(**(code **)(pcVar28 + 0xc1dd4))" (( "(") (pointer_expression "**(code **)(pcVar28 + 0xc1dd4)" (* "*") (pointer_expression "*(code **)(pcVar28 + 0xc1dd4)" (* "*") (cast_expression "(code **)(pcVar28 + 0xc1dd4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0xc1dd4)" (( "(") (binary_expression "pcVar28 + 0xc1dd4" (identifier "pcVar28") (+ "+") (number_literal "0xc1dd4")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(pbVar19 + 4))" (( "(") (pointer_expression "*(undefined4 *)(pbVar19 + 4)" (* "*") (cast_expression "(undefined4 *)(pbVar19 + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar19 + 4)" (( "(") (binary_expression "pbVar19 + 4" (identifier "pbVar19") (+ "+") (number_literal "4")) () ")")))) () ")")))) (; ";")) (expression_statement "ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);" (assignment_expression "ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7)" (identifier "ppbVar4") (= "=") (cast_expression "(byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "FUN_00099710(ppbVar4,uVar6,0,iVar7)" (identifier "FUN_00099710") (argument_list "(ppbVar4,uVar6,0,iVar7)" (( "(") (identifier "ppbVar4") (, ",") (identifier "uVar6") (, ",") (number_literal "0") (, ",") (identifier "iVar7") () ")"))))) (; ";")) (} "}")) (else_clause "else {\n      ppbVar4 = (byte **)ppbVar4[2];\n    }" (else "else") (compound_statement "{\n      ppbVar4 = (byte **)ppbVar4[2];\n    }" ({ "{") (expression_statement "ppbVar4 = (byte **)ppbVar4[2];" (assignment_expression "ppbVar4 = (byte **)ppbVar4[2]" (identifier "ppbVar4") (= "=") (cast_expression "(byte **)ppbVar4[2]" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (subscript_expression "ppbVar4[2]" (identifier "ppbVar4") ([ "[") (number_literal "2") (] "]")))) (; ";")) (} "}")))) (if_statement "if (ppbVar4 != (byte **)0x0) {\n                    \n                    \n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }" (if "if") (parenthesized_expression "(ppbVar4 != (byte **)0x0)" (( "(") (binary_expression "ppbVar4 != (byte **)0x0" (identifier "ppbVar4") (!= "!=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    \n                    \n      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n      return ppbVar12;\n    }" ({ "{") (expression_statement "ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);" (assignment_expression "ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0)" (identifier "ppbVar12") (= "=") (cast_expression "(byte **)(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "(**(code **)(pcVar28 + 0xc1e3c))\n                                    (iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0)" (parenthesized_expression "(**(code **)(pcVar28 + 0xc1e3c))" (( "(") (pointer_expression "**(code **)(pcVar28 + 0xc1e3c)" (* "*") (pointer_expression "*(code **)(pcVar28 + 0xc1e3c)" (* "*") (cast_expression "(code **)(pcVar28 + 0xc1e3c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0xc1e3c)" (( "(") (binary_expression "pcVar28 + 0xc1e3c" (identifier "pcVar28") (+ "+") (number_literal "0xc1e3c")) () ")"))))) () ")")) (argument_list "(iVar7,*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0)" (( "(") (identifier "iVar7") (, ",") (pointer_expression "*(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c)" (* "*") (cast_expression "(undefined4 *)\n                                            ((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c)" (( "(") (binary_expression "(uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c" (binary_expression "(uint)*(byte *)ppbVar4 * 4 +\n                                            *(int *)(pcVar28 + 0xc1d98)" (binary_expression "(uint)*(byte *)ppbVar4 * 4" (binary_expression "(uint)*(byte *)ppbVar4" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(byte *)ppbVar4" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "ppbVar4"))) (* "*") (number_literal "4")) (+ "+") (pointer_expression "*(int *)(pcVar28 + 0xc1d98)" (* "*") (cast_expression "(int *)(pcVar28 + 0xc1d98)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar28 + 0xc1d98)" (( "(") (binary_expression "pcVar28 + 0xc1d98" (identifier "pcVar28") (+ "+") (number_literal "0xc1d98")) () ")"))))) (+ "+") (number_literal "-0x6c1c")) () ")")))) (, ",") (number_literal "0xffffffff") (, ",") (number_literal "0") () ")"))))) (; ";")) (return_statement "return ppbVar12;" (return "return") (identifier "ppbVar12") (; ";")) (} "}"))) (} "}"))) (return_statement "return ppbVar4;" (return "return") (identifier "ppbVar4") (; ";")) (labeled_statement "code_r0x000993b8:\n  piVar13 = ppiVar17[1];" (statement_identifier "code_r0x000993b8") (: ":") (expression_statement "piVar13 = ppiVar17[1];" (assignment_expression "piVar13 = ppiVar17[1]" (identifier "piVar13") (= "=") (subscript_expression "ppiVar17[1]" (identifier "ppiVar17") ([ "[") (number_literal "1") (] "]"))) (; ";"))) (expression_statement "iVar7 = iVar7 + 1;" (assignment_expression "iVar7 = iVar7 + 1" (identifier "iVar7") (= "=") (binary_expression "iVar7 + 1" (identifier "iVar7") (+ "+") (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: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) 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: (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: (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: (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: (type_identifier) 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: (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: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) 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: (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: (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: (pointer_declarator declarator: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (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: (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: (identifier) right: (number_literal))))))) (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 (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) 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))))) (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: (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: (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: (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: (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: (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: (parenthesized_expression (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 (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: (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)) (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)

{
  int *piVar1;
  bool bVar2;
  undefined *puVar3;
  byte **ppbVar4;
  int **ppiVar5;
  undefined4 uVar6;
  int iVar7;
  int iVar8;
  undefined4 uVar9;
  int iVar10;
  int *piVar11;
  byte **ppbVar12;
  int *piVar13;
  int **ppiVar14;
  byte bVar15;
  int **ppiVar16;
  int **ppiVar17;
  byte **ppbVar18;
  byte *pbVar19;
  int *piVar20;
  undefined1 uVar21;
  uint uVar22;
  uint uVar23;
  int **unaff_s1;
  int *piVar24;
  undefined4 *puVar25;
  int **unaff_s2;
  int **unaff_s3;
  int *piVar26;
  undefined *puVar27;
  code *pcVar28;
  double dVar29;
  undefined8 uVar30;
  int *local_resc;
  byte **ppbStack_128;
  byte *pbStack_d8;
  int *piStack_d4;
  code *local_d0;
  undefined4 local_c8;
  undefined4 local_c4;
  undefined4 local_c0;
  undefined4 local_bc;
  undefined4 local_b8;
  undefined4 local_b4;
  undefined4 local_b0;
  undefined4 local_ac;
  undefined4 local_a8;
  undefined4 local_a4;
  undefined1 local_a0;
  int local_9c;
  int **local_98;
  int *local_94;
  int local_90;
  int **local_8c;
  int **local_88;
  undefined4 local_84;
  undefined *local_70;
  int *local_64;
  int local_60;
  byte **local_5c;
  undefined *local_58;
  int **local_54;
  int **local_50;
  int **local_4c;
  
  puVar3 = PTR___stack_chk_guard_0015ba2c;
  ppbVar12 = *(byte ***)PTR___stack_chk_guard_0015ba2c;
  ppiVar14 = param_1;
  ppiVar16 = param_2;
  local_54 = unaff_s1;
  local_4c = unaff_s3;
  local_resc = param_4;
  if (*param_1 == (int *)0x0) {
    ppiVar16 = &local_resc;
    ppiVar5 = (int **)sqlite3_vmprintf(param_3);
    if (ppiVar5 == (int **)0x0) {
LAB_00099014:
      unaff_s2 = (int **)0x0;
      *param_1 = (int *)0x7;
      ppiVar14 = (int **)*param_2;
    }
    else {
      ppiVar14 = (int **)*param_2;
      unaff_s2 = ppiVar5;
      if (ppiVar14 != (int **)0x0) {
        param_3 = ppiVar5;
        unaff_s2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x5624);
        ppiVar16 = ppiVar14;
        (*(code *)PTR_sqlite3_free_0015b620)(ppiVar5);
        if (unaff_s2 == (int **)0x0) goto LAB_00099014;
        ppiVar14 = (int **)*param_2;
      }
    }
    (*(code *)PTR_sqlite3_free_0015b620)();
    *param_2 = (int *)unaff_s2;
    local_54 = param_1;
    local_4c = param_2;
  }
  ppbVar4 = *(byte ***)puVar3;
  if (ppbVar12 == ppbVar4) {
    return ppbVar4;
  }
  puVar27 = PTR___stack_chk_fail_0015ba10;
  (*(code *)PTR___stack_chk_fail_0015ba10)();
  local_70 = puVar27 + 0xca57c;
  local_58 = puVar3;
  piVar24 = *(int **)(puVar27 + 0xc29f8);
  local_64 = (int *)0x0;
  local_5c = (byte **)*piVar24;
  local_50 = unaff_s2;
  uVar6 = (**(code **)(puVar27 + 0xc2694))();
  iVar7 = (**(code **)(local_70 + -0x7f9c))(*param_3);
  iVar8 = (**(code **)(local_70 + -0x7fac))(*param_3);
  ppiVar5 = ppiVar14;
  if (ppiVar16 == (int **)&SUB_00000002) {
    uVar9 = (**(code **)(local_70 + -0x7ed0))(ppiVar14);
    param_4 = &local_60;
    local_60 = 0;
    (**(code **)(local_70 + -0x7d60))(uVar9,0x3ec,0xffffffff);
    if (local_60 == 0) {
      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x7434);
      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);
    }
    else {
      iVar10 = (**(code **)(local_70 + -0x7fac))(param_3[1]);
      if ((iVar7 != 0) && (iVar10 == 4)) {
        local_64 = (int *)(**(code **)(local_70 + -0x7fb0))(param_3[1]);
        local_64 = (int *)*local_64;
        piVar20 = (int *)(*(code *)(*(int *)(local_70 + -0x7eb0) + 0x43f8))
                                   (uVar6,iVar7,iVar8 + 1,local_64);
        if (local_64 == piVar20) {
          (**(code **)(local_70 + -0x7e40))
                    (ppiVar14,*(int *)(local_70 + -0x7fc8) + 0x52ac,0xffffffff);
        }
        goto LAB_000990fc;
      }
      ppiVar17 = (int **)(*(int *)(local_70 + -0x7fb4) + -0x744c);
      (**(code **)(local_70 + -0x7e40))(ppiVar14,ppiVar17,0xffffffff);
    }
  }
  else {
    if (iVar7 == 0) {
LAB_000990f4:
      iVar8 = *(int *)(local_70 + -0x7fb4);
      if (local_64 != (int *)0x0) {
LAB_000990fc:
        param_4 = (int *)0xffffffff;
        ppiVar17 = &local_64;
        (**(code **)(local_70 + -0x7e28))(ppiVar14,ppiVar17,4);
        goto LAB_00099118;
      }
    }
    else {
      iVar8 = (*(code *)(*(int *)(local_70 + -0x7ef0) + -0x2c24))(uVar6,iVar7,iVar8 + 1);
      if (iVar8 != 0) {
        local_64 = *(int **)(iVar8 + 8);
        goto LAB_000990f4;
      }
      local_64 = (int *)0x0;
      iVar8 = *(int *)(local_70 + -0x7fb4);
    }
    param_3 = (int **)sqlite3_mprintf(iVar8 + -0x7478,iVar7);
    ppiVar17 = param_3;
    (**(code **)(local_70 + -0x7e40))(ppiVar14,param_3,0xffffffff);
    ppiVar5 = param_3;
    (**(code **)(local_70 + -0x7f90))();
  }
LAB_00099118:
  if (local_5c == (byte **)*piVar24) {
    return (byte **)*piVar24;
  }
  pcVar28 = *(code **)(local_70 + -0x7ba0);
  uVar6 = 0x992a0;
  (*pcVar28)();
  local_8c = ppiVar14;
  local_94 = piVar24;
  local_90 = iVar7;
  piVar24 = &local_c8;
  local_d0 = pcVar28 + 0xca310;
  local_84 = uVar6;
  local_88 = ppiVar16;
  local_98 = param_3;
  piVar26 = *(int **)(pcVar28 + 0xc278c);
  piVar20 = *ppiVar17;
  local_c8 = 0;
  local_c4 = 0;
  local_c0 = 0;
  local_bc = 0;
  local_b8 = 0;
  local_b4 = 0;
  local_b0 = 0;
  local_ac = 0;
  local_a8 = 0;
  local_a4 = 0;
  local_a0 = 0;
  local_9c = *piVar26;
  pbVar19 = (byte *)((int)piVar20 * 2);
  if ((int)piVar20 < 1) {
    uVar23 = 0;
    ppiVar17[5] = (int *)0x2;
    ppiVar17[7] = (int *)0x1;
LAB_00099480:
    piVar24 = ppiVar5[0xc];
    piVar13 = (int *)((int)piVar24 >> (uVar23 & 0x1f));
    piVar11 = piVar13;
    piVar20 = (int *)(((int)piVar24 << 1) << (~uVar23 & 0x1f) |
                     (uint)ppiVar5[0xd] >> (uVar23 & 0x1f));
    if ((uVar23 & 0x20) != 0) {
      piVar11 = (int *)((int)piVar24 >> 0x1f);
      piVar20 = piVar13;
    }
    piVar24 = piVar20;
    dVar29 = (double)(**(code **)(local_d0 + -0x7f18))(piVar11);
    ppbVar12 = (byte **)0x0;
    ppiVar17[0xc] = piVar11;
    ppiVar17[0xd] = piVar20;
    *(double *)(ppiVar17 + 10) = dVar29 * *(double *)(*(int *)(local_d0 + -0x7f1c) + -0x7780);
  }
  else {
    piVar13 = ppiVar17[1];
    bVar2 = false;
    piVar11 = piVar13;
    do {
      piVar1 = piVar11 + 1;
      piVar11 = piVar11 + 3;
      if (*(char *)piVar1 == '@') {
        bVar2 = true;
      }
    } while (piVar13 + (int)piVar20 * 3 != piVar11);
    param_4 = (int *)0x0;
    uVar22 = 0;
    iVar7 = 0;
LAB_000993bc:
    piVar13 = (int *)((int)piVar13 + (int)param_4);
    if (!bVar2) {
      if (*(char *)((int)piVar13 + 5) == '\0') goto LAB_0009939c;
      iVar8 = *piVar13;
      bVar15 = *(byte *)(piVar13 + 1);
      if (iVar8 != 0) goto LAB_000993d8;
      if (bVar15 != 2) goto LAB_00099394;
      if (iVar7 == 0) {
        iVar8 = 0;
      }
      else {
        iVar10 = 0;
        do {
          iVar8 = iVar10 + 1;
          ppiVar17[4][iVar10 * 2] = 0;
          *(undefined1 *)(ppiVar17[4] + iVar10 * 2 + 1) = 0;
          iVar10 = iVar8;
        } while (iVar8 != iVar7);
        iVar8 = iVar8 * 8;
      }
      param_4 = (int *)0x1;
      ppiVar17[5] = (int *)0x1;
      piVar24 = *(int **)(pcVar28 + 0xc23f4);
      uVar30 = *(undefined8 *)(piVar24 + -0x1de2);
      *(undefined4 *)((int)ppiVar17[4] + iVar8) = 1;
      pbVar19 = (byte *)0x0;
      *(undefined1 *)((int)ppiVar17[4] + iVar8 + 4) = 1;
      *(undefined8 *)(ppiVar17 + 10) = uVar30;
      ppiVar17[0xd] = (int *)0x1;
      ppiVar17[0xc] = (int *)0x0;
      ppiVar17[0xe] = (int *)0x1;
      ppbVar12 = (byte **)0x0;
      goto LAB_000994e0;
    }
    if (*(char *)((int)piVar13 + 5) == '\0') {
LAB_0009939c:
      uVar23 = uVar22;
      if ((int)piVar20 <= iVar7 + 1) goto LAB_00099470;
    }
    else {
      iVar8 = *piVar13;
      bVar15 = *(byte *)(piVar13 + 1);
LAB_000993d8:
      if ((iVar8 < 1) || ((int)(uint)*(byte *)((int)ppiVar5 + 0x15) < iVar8)) {
LAB_00099394:
        uVar21 = 0x46;
        if (bVar15 != 0x40) goto LAB_0009939c;
      }
      else if (bVar15 == 8) {
        uVar21 = 0x42;
      }
      else if (bVar15 < 9) {
        uVar21 = 0x41;
        if ((bVar15 != 2) && (uVar21 = 0x45, bVar15 != 4)) goto LAB_0009939c;
      }
      else {
        uVar21 = 0x44;
        if ((bVar15 != 0x20) && ((uVar21 = 0x46, bVar15 != 0x40 && (uVar21 = 0x43, bVar15 != 0x10)))
           ) goto LAB_0009939c;
      }
      piVar20 = ppiVar17[4];
      uVar23 = uVar22 + 2;
      *(undefined1 *)((int)&local_c8 + uVar22) = uVar21;
      *(char *)((int)&local_c8 + uVar22 + 1) = (char)*piVar13 + '/';
      piVar20[iVar7 * 2] = (int)uVar23 >> 1;
      *(undefined1 *)(ppiVar17[4] + iVar7 * 2 + 1) = 1;
      piVar20 = *ppiVar17;
      uVar22 = uVar23;
      if ((int)piVar20 <= iVar7 + 1) {
LAB_00099470:
        pbVar19 = (byte *)(iVar7 + 1);
        ppiVar17[5] = (int *)0x2;
        ppiVar17[7] = (int *)0x1;
        uVar22 = uVar23;
        if (uVar23 != 0) goto LAB_00099544;
        goto LAB_00099480;
      }
    }
    param_4 = param_4 + 3;
    if ((int)uVar22 < 0x28) goto code_r0x000993b8;
    ppiVar17[5] = (int *)0x2;
    ppiVar17[7] = (int *)0x1;
LAB_00099544:
    pbVar19 = (byte *)(iVar7 + 1);
    piVar20 = (int *)sqlite3_mprintf(*(int *)(pcVar28 + 0xc2348) + 0x71f4);
    ppiVar17[6] = piVar20;
    if (piVar20 != (int *)0x0) {
      uVar23 = (int)uVar22 >> 1;
      goto LAB_00099480;
    }
    ppbVar12 = (byte **)&DAT_00000007;
  }
LAB_000994e0:
  if (local_9c == *piVar26) {
    return ppbVar12;
  }
  pcVar28 = *(code **)(local_d0 + -0x7ba0);
  iVar7 = local_9c;
  (*pcVar28)();
  ppbVar4 = &pbStack_d8;
  puVar25 = *(undefined4 **)(pcVar28 + 0xc2410);
  ppbVar18 = (byte **)*puVar25;
  ppbVar12 = ppbVar18;
  pbStack_d8 = pbVar19;
  piStack_d4 = param_4;
  if ((*(int *)(iVar7 + 0x28) != 0) || (99 < *(int *)(iVar7 + 0x30))) goto LAB_0009967c;
  piVar20 = (int *)sqlite3_vmprintf();
  if (piVar20 == (int *)0x0) {
LAB_000996f0:
    *(undefined4 *)(iVar7 + 0x28) = 7;
  }
  else {
    ppbVar4 = *(byte ***)(iVar7 + 0x2c);
    if (ppbVar4 == (byte **)0x0) {
      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x53f4);
    }
    else {
      pbVar19 = (byte *)(*(int *)(pcVar28 + 0xc1fcc) + 0x5c48);
    }
    piVar24 = (int *)(*(int *)(pcVar28 + 0xc1fe0) - 0x741c);
    iVar8 = sqlite3_mprintf();
    *(int *)(iVar7 + 0x2c) = iVar8;
    param_4 = piVar20;
    if (iVar8 == 0) goto LAB_000996f0;
  }
  *(int *)(iVar7 + 0x30) = *(int *)(iVar7 + 0x30) + 1;
  ppbVar12 = ppbVar4;
LAB_0009967c:
  ppbVar4 = (byte **)*puVar25;
  if (ppbVar18 == ppbVar4) {
    return ppbVar4;
  }
  pcVar28 = *(code **)(pcVar28 + 0xc23f4);
  (*pcVar28)();
  piVar20 = *(int **)(pcVar28 + 0xc231c);
  ppbStack_128 = (byte **)0x0;
  iVar7 = *piVar20;
  ppbVar4 = (byte **)0x0;
  if (ppbVar12 != (byte **)0x0) {
    if (*(char *)ppbVar12 == '$') {
      pbVar19 = (byte *)((int)ppbVar12 + 1);
      ppbVar4 = (byte **)FUN_0008b18c();
      ppbVar12 = ppbStack_128;
    }
    else {
      iVar8 = *(int *)(pcVar28 + 0xc1eec);
      *(char *)((int)piVar24 + 0x15) = *(char *)((int)piVar24 + 0x15) + '\x01';
      ppbVar4 = (byte **)sqlite3_mprintf(iVar8 + -0x7414);
      if (ppbVar4 == (byte **)0x0) {
        (**(code **)(pcVar28 + 0xc2074))(param_4);
        ppbVar4 = (byte **)0x0;
      }
      else {
        pbVar19 = (byte *)0xffffffff;
        ppbVar12 = ppbVar4;
        (**(code **)(pcVar28 + 0xc2060))(param_4);
        (**(code **)(pcVar28 + 0xc1f10))(ppbVar4);
        ppbVar4 = (byte **)0x0;
      }
    }
  }
  if (iVar7 == *piVar20) {
    return ppbVar4;
  }
  pcVar28 = *(code **)(pcVar28 + 0xc2300);
  (*pcVar28)();
  ppbVar4 = (byte **)FUN_0008ad48();
  if (ppbVar4 != (byte **)0x0) {
    if (ppbVar12 == (byte **)&SUB_00000002) {
      uVar6 = (**(code **)(pcVar28 + 0xc1dd4))(*(undefined4 *)(pbVar19 + 4));
      ppbVar4 = (byte **)FUN_00099710(ppbVar4,uVar6,0,iVar7);
    }
    else {
      ppbVar4 = (byte **)ppbVar4[2];
    }
    if (ppbVar4 != (byte **)0x0) {
                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */
                    /* WARNING: Treating indirect jump as call */
      ppbVar12 = (byte **)(**(code **)(pcVar28 + 0xc1e3c))
                                    (iVar7,*(undefined4 *)
                                            ((uint)*(byte *)ppbVar4 * 4 +
                                            *(int *)(pcVar28 + 0xc1d98) + -0x6c1c),0xffffffff,0);
      return ppbVar12;
    }
  }
  return ppbVar4;
code_r0x000993b8:
  piVar13 = ppiVar17[1];
  iVar7 = iVar7 + 1;
  goto LAB_000993bc;
}

