
int pragmaVtabFilter(sqlite3_vtab_cursor *pVtabCursor,int idxNum,char *idxStr,int argc,
                    sqlite3_value **argv)

{
  sqlite3_vtab **ppsVar1;
  undefined *puVar2;
  int iVar3;
  char *pcVar4;
  sqlite3_vtab *psVar5;
  char *pcVar6;
  char *zSql;
  undefined4 uVar7;
  sqlite3_vtab_cursor *ppStmt;
  undefined4 *puVar8;
  sqlite3 *psVar9;
  int *zSql_00;
  int iVar10;
  sqlite3_vtab_cursor *psVar11;
  int iVar12;
  int *piVar13;
  int *piVar14;
  sqlite3_vtab *psVar15;
  int *piVar16;
  undefined *unaff_s6;
  int iVar17;
  undefined *puVar18;
  code *pcVar19;
  sqlite3_vtab_cursor *ppStmt_00;
  sqlite3_vtab_cursor *psVar20;
  code *pcVar21;
  code *pcVar22;
  sqlite3_stmt **in_stack_fffffeb8;
  char **ppcStack_144;
  int iStack_11c;
  int *piStack_118;
  int iStack_114;
  undefined4 uStack_110;
  sqlite3 *psStack_10c;
  int *piStack_108;
  int *piStack_104;
  undefined4 *puStack_100;
  char *pcStack_fc;
  undefined *puStack_f8;
  int iStack_f4;
  undefined *puStack_f0;
  int in_stack_ffffff30;
  int iStack_cc;
  sqlite3_vtab_cursor sStack_b8;
  sqlite3 *psStack_b4;
  int iStack_b0;
  int iStack_ac;
  int *piStack_a8;
  code *pcStack_a4;
  int iStack_98;
  sqlite3_vtab_cursor *psStack_94;
  sqlite3_vtab_cursor sStack_80;
  undefined4 *puStack_7c;
  int iStack_74;
  sqlite3_value **ppsStack_70;
  sqlite3_vtab_cursor *psStack_6c;
  sqlite3_vtab *psStack_68;
  code *pcStack_64;
  StrAccum acc;
  
  puVar2 = PTR___stack_chk_guard_0015ba2c;
  psVar15 = pVtabCursor->pVtab;
  iVar3 = *(int *)PTR___stack_chk_guard_0015ba2c;
  ppStmt = (sqlite3_vtab_cursor *)argc;
  (*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();
  iVar12 = -((int)((*(byte *)(psVar15[1].nRef + 5) ^ 0x20) << 0x1a) >> 0x1f);
  if (0 < argc) {
    argc = argc + iVar12;
    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;
    do {
      pcVar4 = (char *)(*(code *)PTR_sqlite3_value_text_0015b614)(*argv);
      if (pcVar4 != (char *)0x0) {
        psVar5 = (sqlite3_vtab *)(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);
        pVtabCursor[iVar12 + 4].pVtab = psVar5;
        if (psVar5 == (sqlite3_vtab *)0x0) goto LAB_000f7410;
      }
      iVar12 = iVar12 + 1;
      argv = argv + 1;
    } while (iVar12 != argc);
  }
  acc.accError = '\0';
  acc.printfFlags = '\0';
  acc.zText = (char *)0x0;
  acc.db = (sqlite3 *)0x0;
  acc.nAlloc = 0;
  acc.nChar = 0;
  acc.mxAlloc = (u32)psVar15[1].pModule[1].xDisconnect;
  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&acc,PTR_DAT_0015b5fc + -0x5360);
  if (pVtabCursor[5].pVtab != (sqlite3_vtab *)0x0) {
    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc,PTR_DAT_0015b5fc + -0x5358);
  }
  pcVar4 = *(char **)psVar15[1].nRef;
  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&acc);
  if (pVtabCursor[4].pVtab != (sqlite3_vtab *)0x0) {
    pcVar4 = PTR_LAB_0015b5e8 + 0x55c4;
    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc);
  }
  pcVar6 = (char *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&acc);
  if (pcVar6 == (char *)0x0) {
LAB_000f7410:
    iVar12 = 7;
  }
  else {
    ppStmt = pVtabCursor + 1;
    pcVar4 = pcVar6;
    iVar12 = sqlite3_prepare_v2((sqlite3 *)psVar15[1].pModule,pcVar6,-1,(sqlite3_stmt **)ppStmt,
                                (char **)0x0);
    (*(code *)PTR_sqlite3_free_0015b620)(pcVar6);
    if (iVar12 == 0) {
      iVar12 = pragmaVtabNext(pVtabCursor);
    }
    else {
      pcVar4 = (char *)(*(code *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule);
      pcVar6 = (char *)(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);
      psVar15->zErrMsg = pcVar6;
    }
  }
  if (iVar3 == *(int *)puVar2) {
    return iVar12;
  }
  pcVar21 = rtreeConstraintError;
  puVar18 = PTR___stack_chk_fail_0015ba10;
  (*(code *)PTR___stack_chk_fail_0015ba10)();
  piVar14 = *(int **)(puVar18 + 0x645d8);
  iVar10 = *(int *)(iVar3 + 0x24);
  pcVar6 = *(char **)(iVar3 + 0x20);
  puStack_7c = (undefined4 *)*piVar14;
  sStack_80.pVtab = (sqlite3_vtab *)0x0;
  iStack_74 = iVar12;
  ppsStack_70 = argv;
  psStack_6c = pVtabCursor;
  psStack_68 = psVar15;
  pcStack_64 = pcVar21;
  zSql = (char *)(**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5354,pcVar6);
  if (zSql == (char *)0x0) {
    iVar12 = 7;
    (**(code **)(puVar18 + 0x641cc))(0);
LAB_000f7558:
    (**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);
  }
  else {
    ppStmt = &sStack_80;
    iVar10 = -1;
    pcVar6 = zSql;
    iVar12 = sqlite3_prepare_v2(*(sqlite3 **)(iVar3 + 0xc),zSql,-1,(sqlite3_stmt **)ppStmt,
                                (char **)0x0);
    (**(code **)(puVar18 + 0x641cc))(zSql);
    if (iVar12 != 0) goto LAB_000f7558;
    if (pcVar4 == (char *)0x0) {
      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,0);
      pcVar6 = *(char **)(iVar3 + 0x24);
      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5340,pcVar6);
      *(undefined4 *)(iVar3 + 8) = uVar7;
    }
    else {
      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4);
      ppStmt = (sqlite3_vtab_cursor *)(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4 + 1);
      pcVar6 = *(char **)(iVar3 + 0x24);
      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5320,pcVar6);
      *(undefined4 *)(iVar3 + 8) = uVar7;
    }
    iVar12 = 0x13;
    (**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);
  }
  if (puStack_7c == (undefined4 *)*piVar14) {
    return iVar12;
  }
  pcVar21 = *(code **)(puVar18 + 0x645bc);
  pcVar22 = rtreeCheckPrepare;
  puVar8 = puStack_7c;
  (*pcVar21)();
  ppStmt_00 = (sqlite3_vtab_cursor *)(pcVar21 + 0x6bfc4);
  zSql_00 = &iStack_98;
  piVar13 = *(int **)(pcVar21 + 0x64440);
  sStack_b8.pVtab = (sqlite3_vtab *)0x0;
  psStack_b4 = (sqlite3 *)*piVar13;
  iStack_b0 = iVar3;
  iStack_ac = iVar12;
  piStack_a8 = piVar14;
  pcStack_a4 = pcVar22;
  iStack_98 = iVar10;
  psStack_94 = ppStmt;
  piVar14 = (int *)(**(code **)(pcVar21 + 0x6402c))(pcVar6);
  if (puVar8[10] == 0) {
    if (piVar14 == (int *)0x0) {
      puVar8[10] = 7;
    }
    else {
      ppStmt = &sStack_b8;
      iVar10 = -1;
      in_stack_ffffff30 = 0;
      zSql_00 = piVar14;
      iVar12 = sqlite3_prepare_v2((sqlite3 *)*puVar8,(char *)piVar14,-1,(sqlite3_stmt **)ppStmt,
                                  (char **)0x0);
      puVar8[10] = iVar12;
    }
  }
  (**(code **)(pcVar21 + 0x64034))(piVar14);
  if (psStack_b4 == (sqlite3 *)*piVar13) {
    return (int)sStack_b8.pVtab;
  }
  pcVar21 = *(code **)(pcVar21 + 0x64424);
  psVar9 = psStack_b4;
  (*pcVar21)();
  puStack_f8 = puVar2;
  piVar16 = *(int **)(pcVar21 + 0x6435c);
  iStack_11c = 0;
  psStack_10c = (sqlite3 *)*piVar16;
  iVar12 = iVar10;
  psVar11 = ppStmt;
  piStack_108 = piVar13;
  piStack_104 = piVar14;
  puStack_100 = puVar8;
  pcStack_fc = pcVar4;
  iStack_f4 = argc;
  puStack_f0 = unaff_s6;
  iVar3 = (**(code **)(pcVar21 + 0x63f68))(*(int *)(pcVar21 + 0x63f2c) + -0x65b0,iVar10);
  if (iVar3 == 0) {
    piVar14 = (int *)(**(code **)(pcVar21 + 0x63f58))(*(int *)(pcVar21 + 0x63f2c) + -0x52f8);
    if (piVar14 == (int *)0x0) {
      iStack_11c = 7;
      goto LAB_000f778c;
    }
    iVar12 = -1;
  }
  else {
    piStack_118 = (int *)0x0;
    pcVar22 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1bd4);
    iStack_114 = 0;
    uStack_110 = 0;
    (*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x5288,&iStack_11c);
    pcVar19 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1cd4);
    (*pcVar19)(&piStack_118,zSql_00,&iStack_11c);
    (*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x1e34,&iStack_11c);
    (*pcVar19)(&piStack_118,iVar10,&iStack_11c);
    zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x5cfc);
    (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);
    piVar14 = piStack_118;
    iVar12 = iStack_114;
    if (0 < (int)ppStmt) {
      iVar3 = *(int *)(pcVar21 + 0x6404c);
      psVar20 = (sqlite3_vtab_cursor *)0x0;
      iVar10 = *(int *)(pcVar21 + 0x63f18);
      iVar17 = *(int *)(pcVar21 + 0x63f2c);
      zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x53f4);
      do {
        while (ppsVar1 = &psVar20->pVtab,
              psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),
              *(char *)((int)ppsVar1 + iStack_cc) != '\0') {
          (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);
          (*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),
                     &iStack_11c);
          (*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c);
          (*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c);
          zSql_00 = (int *)(iVar10 + 0x5c88);
          piVar14 = piStack_118;
          iVar12 = iStack_114;
          if (ppStmt == psVar20) goto joined_r0x000f7930;
        }
        piVar14 = piStack_118;
        iVar12 = iStack_114;
      } while (ppStmt != psVar20);
    }
  }
joined_r0x000f7930:
  if (iStack_11c == 0) {
    in_stack_fffffeb8 = (sqlite3_stmt **)0x0;
    zSql_00 = piVar14;
    iStack_11c = sqlite3_prepare_v2(psVar9,(char *)piVar14,iVar12,(sqlite3_stmt **)ppStmt_00,
                                    (char **)0x0);
    psVar11 = ppStmt_00;
  }
LAB_000f778c:
  (**(code **)(pcVar21 + 0x63f50))(piVar14);
  if (psStack_10c == (sqlite3 *)*piVar16) {
    return iStack_11c;
  }
  psVar9 = psStack_10c;
  (**(code **)(pcVar21 + 0x64340))();
  iVar12 = sqlite3LockAndPrepare
                     (psVar9,(char *)zSql_00,iVar12,(uint)psVar11 & 0xf | 0x80,(Vdbe *)0x0,
                      in_stack_fffffeb8,ppcStack_144);
  return iVar12;
}



int FUN_000f7210(int *param_1,undefined4 param_2,undefined4 param_3,int *param_4,undefined4 *param_5
                )

{
  undefined *puVar1;
  undefined *puVar2;
  int iVar3;
  undefined *puVar4;
  int *piVar5;
  undefined4 *puVar6;
  char *pcVar7;
  int iVar8;
  undefined4 *puVar9;
  int iVar10;
  undefined4 *puVar11;
  undefined4 uVar12;
  int *piVar13;
  int *piVar14;
  code *pcVar15;
  int iVar16;
  int iVar17;
  undefined *unaff_s6;
  int iVar18;
  code *pcVar19;
  code *pcVar20;
  undefined4 uVar21;
  code *pcVar22;
  int iStack_11c;
  int iStack_118;
  undefined4 uStack_114;
  undefined4 uStack_110;
  int iStack_10c;
  int *piStack_108;
  undefined4 *puStack_104;
  undefined4 *puStack_100;
  undefined *puStack_fc;
  undefined *puStack_f8;
  int *piStack_f4;
  undefined *puStack_f0;
  int iStack_d0;
  int iStack_cc;
  int iStack_b8;
  int iStack_b4;
  int iStack_b0;
  int iStack_ac;
  int *piStack_a8;
  code *pcStack_a4;
  undefined4 uStack_98;
  int *piStack_94;
  undefined4 local_90;
  undefined *local_88;
  int local_80;
  undefined4 *local_7c;
  int local_74;
  undefined4 *local_70;
  int *local_6c;
  int local_68;
  undefined4 local_64;
  undefined4 local_50;
  undefined4 local_3c;
  undefined4 local_38;
  undefined4 local_34;
  undefined4 local_30;
  undefined4 local_2c;
  undefined2 local_28;
  int local_24;
  
  puVar1 = PTR___stack_chk_guard_0015ba2c;
  iVar16 = *param_1;
  local_24 = *(int *)PTR___stack_chk_guard_0015ba2c;
  piVar5 = param_4;
  (*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();
  piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f);
  if (0 < (int)param_4) {
    param_4 = (int *)((int)param_4 + (int)piVar13);
    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;
    do {
      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);
      if (puVar2 != (undefined *)0x0) {
        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);
        param_1[(int)(piVar13 + 1)] = iVar3;
        if (iVar3 == 0) goto LAB_000f7410;
      }
      piVar13 = (int *)((int)piVar13 + 1);
      param_5 = param_5 + 1;
    } while (piVar13 != param_4);
  }
  local_28 = 0;
  local_38 = 0;
  local_3c = 0;
  local_34 = 0;
  local_2c = 0;
  local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70);
  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360);
  if (param_1[5] != 0) {
    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);
  }
  puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10);
  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c);
  if (param_1[4] != 0) {
    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;
    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);
  }
  puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c);
  if (puVar4 == (undefined *)0x0) {
LAB_000f7410:
    iVar3 = 7;
  }
  else {
    piVar5 = param_1 + 1;
    local_50 = 0;
    puVar2 = puVar4;
    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);
    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);
    if (iVar3 == 0) {
      iVar3 = FUN_000ddfb0(param_1);
    }
    else {
      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));
      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);
      *(undefined4 *)(iVar16 + 8) = uVar12;
    }
  }
  if (local_24 == *(int *)puVar1) {
    return iVar3;
  }
  uVar21 = 0xf7454;
  iVar8 = local_24;
  puVar4 = PTR___stack_chk_fail_0015ba10;
  (*(code *)PTR___stack_chk_fail_0015ba10)();
  local_88 = puVar4 + 0x6c15c;
  piVar13 = *(int **)(puVar4 + 0x645d8);
  uVar12 = *(undefined4 *)(iVar8 + 0x24);
  iVar10 = *(int *)(iVar8 + 0x20);
  local_7c = (undefined4 *)*piVar13;
  local_80 = 0;
  local_74 = iVar3;
  local_70 = param_5;
  local_6c = param_1;
  local_68 = iVar16;
  local_64 = uVar21;
  iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10);
  if (iVar16 == 0) {
    iVar3 = 7;
    (**(code **)(local_88 + -0x7f90))(0);
LAB_000f7558:
    (**(code **)(local_88 + -0x7f74))(local_80);
  }
  else {
    piVar5 = &local_80;
    uVar12 = 0xffffffff;
    local_90 = 0;
    iVar10 = iVar16;
    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);
    (**(code **)(local_88 + -0x7f90))(iVar16);
    if (iVar3 != 0) goto LAB_000f7558;
    if (puVar2 == (undefined *)0x0) {
      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);
      iVar10 = *(int *)(iVar8 + 0x24);
      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);
      *(undefined4 *)(iVar8 + 8) = uVar21;
    }
    else {
      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);
      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);
      iVar10 = *(int *)(iVar8 + 0x24);
      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);
      *(undefined4 *)(iVar8 + 8) = uVar21;
    }
    iVar3 = 0x13;
    (**(code **)(local_88 + -0x7f74))(local_80);
  }
  if (local_7c == (undefined4 *)*piVar13) {
    return iVar3;
  }
  pcVar19 = *(code **)(local_88 + -0x7ba0);
  pcVar22 = FUN_000f75ec;
  puVar9 = local_7c;
  (*pcVar19)();
  puVar11 = &uStack_98;
  piVar14 = *(int **)(pcVar19 + 0x64440);
  iStack_b8 = 0;
  iStack_b4 = *piVar14;
  iStack_b0 = iVar8;
  iStack_ac = iVar3;
  piStack_a8 = piVar13;
  pcStack_a4 = pcVar22;
  uStack_98 = uVar12;
  piStack_94 = piVar5;
  puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11);
  if (puVar9[10] == 0) {
    if (puVar6 == (undefined4 *)0x0) {
      puVar9[10] = 7;
    }
    else {
      piVar5 = &iStack_b8;
      uVar12 = 0xffffffff;
      iStack_d0 = 0;
      puVar11 = puVar6;
      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);
      puVar9[10] = uVar21;
    }
  }
  (**(code **)(pcVar19 + 0x64034))(puVar6);
  if (iStack_b4 == *piVar14) {
    return iStack_b8;
  }
  pcVar22 = *(code **)(pcVar19 + 0x64424);
  iVar16 = iStack_b4;
  (*pcVar22)();
  puStack_f8 = puVar1;
  piVar13 = *(int **)(pcVar22 + 0x6435c);
  iStack_11c = 0;
  iStack_10c = *piVar13;
  piStack_108 = piVar14;
  puStack_104 = puVar6;
  puStack_100 = puVar9;
  puStack_fc = puVar2;
  piStack_f4 = param_4;
  puStack_f0 = unaff_s6;
  iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12);
  if (iVar3 == 0) {
    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);
    if (iVar3 == 0) {
      iStack_11c = 7;
      goto LAB_000f778c;
    }
    uVar12 = 0xffffffff;
  }
  else {
    iStack_118 = 0;
    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);
    uStack_114 = 0;
    uStack_110 = 0;
    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);
    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);
    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);
    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);
    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);
    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);
    iVar3 = iStack_118;
    uVar12 = uStack_114;
    if (0 < (int)piVar5) {
      iVar10 = *(int *)(pcVar22 + 0x6404c);
      piVar14 = (int *)0x0;
      iVar17 = *(int *)(pcVar22 + 0x63f18);
      iVar18 = *(int *)(pcVar22 + 0x63f2c);
      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;
      do {
        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),
              *pcVar7 != '\0') {
          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);
          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);
          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);
          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);
          iVar8 = iVar17 + 0x5c88;
          iVar3 = iStack_118;
          uVar12 = uStack_114;
          if (piVar5 == piVar14) goto joined_r0x000f7930;
        }
        iVar3 = iStack_118;
        uVar12 = uStack_114;
      } while (piVar5 != piVar14);
    }
  }
joined_r0x000f7930:
  if (iStack_11c == 0) {
    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);
  }
LAB_000f778c:
  (**(code **)(pcVar22 + 0x63f50))(iVar3);
  if (iStack_10c == *piVar13) {
    return iStack_11c;
  }
  (**(code **)(pcVar22 + 0x64340))();
  iVar16 = FUN_000f6c34();
  return iVar16;
}


lui gp,0x7
addiu gp,gp,-0x3c60
addu gp,gp,t9
addiu sp,sp,-0x60
lw t9,-0x7eb8(gp)
sw s4,0x50(sp)
addiu t9,t9,0x1b68
sw gp,0x18(sp)
sw s5,0x54(sp)
or s5,a3,zero
sw s2,0x48(sp)
or s2,a0,zero
sw s1,0x44(sp)
sw s0,0x40(sp)
sw ra,0x5c(sp)
sw s6,0x58(sp)
sw s3,0x4c(sp)
lw s4,-0x7b84(gp)
lw s3,0x0(a0)
lw s1,0x70(sp)
lw v0,0x0(s4)
sw v0,0x3c(sp)
jalr t9
_nop
lw v0,0x10(s3)
lw gp,0x18(sp)
lbu s0,0x5(v0)
xori s0,s0,0x20
blez s5,0x000f72d8
_ext s0,s0,0x5,0x1
lw s6,-0x7fc8(gp)
addu s5,s5,s0
addiu s6,s6,0x71f4
lw t9,-0x7f9c(gp)
jalr t9
_lw a0,0x0(s1)
beq v0,zero,0x000f72cc
_lw gp,0x18(sp)
lw t9,-0x7f88(gp)
or a1,v0,zero
jalr t9
_or a0,s6,zero
sll v1,s0,0x2
lw gp,0x18(sp)
addu v1,s2,v1
beq v0,zero,0x000f7410
_sw v0,0x10(v1)
addiu s0,s0,0x1
bne s0,s5,0x000f7294
_addiu s1,s1,0x4
lw v0,0xc(s3)
addiu s0,sp,0x24
lw a1,-0x7fb4(gp)
lw t9,-0x7dec(gp)
or a0,s0,zero
sh zero,0x38(sp)
sw zero,0x28(sp)
addiu a1,a1,-0x5360
sw zero,0x24(sp)
sw zero,0x2c(sp)
sw zero,0x34(sp)
lw v0,0x70(v0)
jalr t9
_sw v0,0x30(sp)
lw a2,0x14(s2)
beq a2,zero,0x000f7334
_lw gp,0x18(sp)
lw a1,-0x7fb4(gp)
or a0,s0,zero
lw t9,-0x7da0(gp)
jalr t9
_addiu a1,a1,-0x5358
lw gp,0x18(sp)
lw v0,0x10(s3)
or a0,s0,zero
lw t9,-0x7dec(gp)
jalr t9
_lw a1,0x0(v0)
lw a2,0x10(s2)
beq a2,zero,0x000f736c
_lw gp,0x18(sp)
lw a1,-0x7fc8(gp)
or a0,s0,zero
lw t9,-0x7da0(gp)
jalr t9
_addiu a1,a1,0x55c4
lw gp,0x18(sp)
lw t9,-0x7ed8(gp)
addiu t9,t9,-0x2478
jalr t9
_or a0,s0,zero
lw gp,0x18(sp)
beq v0,zero,0x000f7410
_or s0,v0,zero
lw t9,-0x7f94(gp)
addiu a3,s2,0x4
lw a0,0xc(s3)
li a2,-0x1
or a1,v0,zero
bal 0x000f71cc
_sw zero,0x10(sp)
or a0,s0,zero
lw gp,0x18(sp)
lw t9,-0x7f90(gp)
jalr t9
_or s0,v0,zero
bne s0,zero,0x000f7418
_lw gp,0x18(sp)
lw t9,-0x7e98(gp)
addiu t9,t9,-0x2050
bal 0x000ddfb0
_or a0,s2,zero
lw gp,0x18(sp)
or s0,v0,zero
lw a0,0x3c(sp)
or v0,s0,zero
lw v1,0x0(s4)
bne a0,v1,0x000f7448
_lw ra,0x5c(sp)
lw s6,0x58(sp)
lw s5,0x54(sp)
lw s4,0x50(sp)
lw s3,0x4c(sp)
lw s2,0x48(sp)
lw s1,0x44(sp)
lw s0,0x40(sp)
jr ra
_addiu sp,sp,0x60
b 0x000f73d8
_li s0,0x7
lw t9,-0x7f8c(gp)
jalr t9
_lw a0,0xc(s3)
lw gp,0x18(sp)
or a1,v0,zero
lw a0,-0x7fc8(gp)
lw t9,-0x7f88(gp)
jalr t9
_addiu a0,a0,0x71f4
lw gp,0x18(sp)
b 0x000f73d8
_sw v0,0x8(s3)
lw t9,-0x7ba0(gp)
jalr t9
_nop
lui gp,0x7
addiu gp,gp,-0x3ea4
addu gp,gp,t9
addiu sp,sp,-0x40
lw t9,-0x7f88(gp)
sw s2,0x34(sp)
sw gp,0x18(sp)
sw s3,0x38(sp)
or s3,a1,zero
sw s0,0x2c(sp)
or s0,a0,zero
sw ra,0x3c(sp)
sw s1,0x30(sp)
lw s2,-0x7b84(gp)
lw a2,0x24(a0)
lw a0,-0x7fb4(gp)
lw a1,0x20(s0)
lw v0,0x0(s2)
addiu a0,a0,-0x5354
sw zero,0x20(sp)
sw v0,0x24(sp)
jalr t9
_nop
beq v0,zero,0x000f7544
_lw gp,0x18(sp)
lw t9,-0x7f94(gp)
addiu a3,sp,0x20
lw a0,0xc(s0)
li a2,-0x1
or a1,v0,zero
sw zero,0x10(sp)
bal 0x000f71cc
_or s1,v0,zero
or a0,s1,zero
lw gp,0x18(sp)
lw t9,-0x7f90(gp)
jalr t9
_or s1,v0,zero
bne s1,zero,0x000f7558
_lw gp,0x18(sp)
lw a0,0x20(sp)
bne s3,zero,0x000f7594
_lw t9,-0x7d2c(gp)
jalr t9
_or a1,zero,zero
lw gp,0x18(sp)
or a2,v0,zero
lw a1,0x24(s0)
lw a0,-0x7fb4(gp)
lw t9,-0x7f88(gp)
jalr t9
_addiu a0,a0,-0x5340
lw gp,0x18(sp)
sw v0,0x8(s0)
lw t9,-0x7f74(gp)
li s1,0x13
jalr t9
_lw a0,0x20(sp)
b 0x000f7568
_lw gp,0x18(sp)
lw t9,-0x7f90(gp)
or a0,zero,zero
jalr t9
_li s1,0x7
lw gp,0x18(sp)
lw t9,-0x7f74(gp)
jalr t9
_lw a0,0x20(sp)
lw gp,0x18(sp)
lw a0,0x24(sp)
or v0,s1,zero
lw v1,0x0(s2)
bne a0,v1,0x000f75e0
_lw ra,0x3c(sp)
lw s3,0x38(sp)
lw s2,0x34(sp)
lw s1,0x30(sp)
lw s0,0x2c(sp)
jr ra
_addiu sp,sp,0x40
jalr t9
_or a1,s3,zero
addiu a1,s3,0x1
lw gp,0x18(sp)
or s1,v0,zero
lw t9,-0x7d2c(gp)
jalr t9
_lw a0,0x20(sp)
or a2,s1,zero
lw gp,0x18(sp)
or a3,v0,zero
lw a1,0x24(s0)
lw a0,-0x7fb4(gp)
lw t9,-0x7f88(gp)
jalr t9
_addiu a0,a0,-0x5320
lw gp,0x18(sp)
b 0x000f752c
_sw v0,0x8(s0)
lw t9,-0x7ba0(gp)
jalr t9
_nop
(translation_unit "int FUN_000f7210(int *param_1,undefined4 param_2,undefined4 param_3,int *param_4,undefined4 *param_5\n                )\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined *puVar4;\n  int *piVar5;\n  undefined4 *puVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 *puVar9;\n  int iVar10;\n  undefined4 *puVar11;\n  undefined4 uVar12;\n  int *piVar13;\n  int *piVar14;\n  code *pcVar15;\n  int iVar16;\n  int iVar17;\n  undefined *unaff_s6;\n  int iVar18;\n  code *pcVar19;\n  code *pcVar20;\n  undefined4 uVar21;\n  code *pcVar22;\n  int iStack_11c;\n  int iStack_118;\n  undefined4 uStack_114;\n  undefined4 uStack_110;\n  int iStack_10c;\n  int *piStack_108;\n  undefined4 *puStack_104;\n  undefined4 *puStack_100;\n  undefined *puStack_fc;\n  undefined *puStack_f8;\n  int *piStack_f4;\n  undefined *puStack_f0;\n  int iStack_d0;\n  int iStack_cc;\n  int iStack_b8;\n  int iStack_b4;\n  int iStack_b0;\n  int iStack_ac;\n  int *piStack_a8;\n  code *pcStack_a4;\n  undefined4 uStack_98;\n  int *piStack_94;\n  undefined4 local_90;\n  undefined *local_88;\n  int local_80;\n  undefined4 *local_7c;\n  int local_74;\n  undefined4 *local_70;\n  int *local_6c;\n  int local_68;\n  undefined4 local_64;\n  undefined4 local_50;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  undefined2 local_28;\n  int local_24;\n  \n  puVar1 = PTR___stack_chk_guard_0015ba2c;\n  iVar16 = *param_1;\n  local_24 = *(int *)PTR___stack_chk_guard_0015ba2c;\n  piVar5 = param_4;\n  (*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();\n  piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f);\n  if (0 < (int)param_4) {\n    param_4 = (int *)((int)param_4 + (int)piVar13);\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);\n  }\n  local_28 = 0;\n  local_38 = 0;\n  local_3c = 0;\n  local_34 = 0;\n  local_2c = 0;\n  local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360);\n  if (param_1[5] != 0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);\n  }\n  puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c);\n  if (param_1[4] != 0) {\n    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);\n  }\n  puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c);\n  if (puVar4 == (undefined *)0x0) {\nLAB_000f7410:\n    iVar3 = 7;\n  }\n  else {\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }\n  if (local_24 == *(int *)puVar1) {\n    return iVar3;\n  }\n  uVar21 = 0xf7454;\n  iVar8 = local_24;\n  puVar4 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_88 = puVar4 + 0x6c15c;\n  piVar13 = *(int **)(puVar4 + 0x645d8);\n  uVar12 = *(undefined4 *)(iVar8 + 0x24);\n  iVar10 = *(int *)(iVar8 + 0x20);\n  local_7c = (undefined4 *)*piVar13;\n  local_80 = 0;\n  local_74 = iVar3;\n  local_70 = param_5;\n  local_6c = param_1;\n  local_68 = iVar16;\n  local_64 = uVar21;\n  iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10);\n  if (iVar16 == 0) {\n    iVar3 = 7;\n    (**(code **)(local_88 + -0x7f90))(0);\nLAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  else {\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  if (local_7c == (undefined4 *)*piVar13) {\n    return iVar3;\n  }\n  pcVar19 = *(code **)(local_88 + -0x7ba0);\n  pcVar22 = FUN_000f75ec;\n  puVar9 = local_7c;\n  (*pcVar19)();\n  puVar11 = &uStack_98;\n  piVar14 = *(int **)(pcVar19 + 0x64440);\n  iStack_b8 = 0;\n  iStack_b4 = *piVar14;\n  iStack_b0 = iVar8;\n  iStack_ac = iVar3;\n  piStack_a8 = piVar13;\n  pcStack_a4 = pcVar22;\n  uStack_98 = uVar12;\n  piStack_94 = piVar5;\n  puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11);\n  if (puVar9[10] == 0) {\n    if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }\n  }\n  (**(code **)(pcVar19 + 0x64034))(puVar6);\n  if (iStack_b4 == *piVar14) {\n    return iStack_b8;\n  }\n  pcVar22 = *(code **)(pcVar19 + 0x64424);\n  iVar16 = iStack_b4;\n  (*pcVar22)();\n  puStack_f8 = puVar1;\n  piVar13 = *(int **)(pcVar22 + 0x6435c);\n  iStack_11c = 0;\n  iStack_10c = *piVar13;\n  piStack_108 = piVar14;\n  puStack_104 = puVar6;\n  puStack_100 = puVar9;\n  puStack_fc = puVar2;\n  piStack_f4 = param_4;\n  puStack_f0 = unaff_s6;\n  iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);\n    if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    uVar12 = 0xffffffff;\n  }\n  else {\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }\njoined_r0x000f7930:\n  if (iStack_11c == 0) {\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }\nLAB_000f778c:\n  (**(code **)(pcVar22 + 0x63f50))(iVar3);\n  if (iStack_10c == *piVar13) {\n    return iStack_11c;\n  }\n  (**(code **)(pcVar22 + 0x64340))();\n  iVar16 = FUN_000f6c34();\n  return iVar16;\n}\n\n" (function_definition "int FUN_000f7210(int *param_1,undefined4 param_2,undefined4 param_3,int *param_4,undefined4 *param_5\n                )\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined *puVar4;\n  int *piVar5;\n  undefined4 *puVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 *puVar9;\n  int iVar10;\n  undefined4 *puVar11;\n  undefined4 uVar12;\n  int *piVar13;\n  int *piVar14;\n  code *pcVar15;\n  int iVar16;\n  int iVar17;\n  undefined *unaff_s6;\n  int iVar18;\n  code *pcVar19;\n  code *pcVar20;\n  undefined4 uVar21;\n  code *pcVar22;\n  int iStack_11c;\n  int iStack_118;\n  undefined4 uStack_114;\n  undefined4 uStack_110;\n  int iStack_10c;\n  int *piStack_108;\n  undefined4 *puStack_104;\n  undefined4 *puStack_100;\n  undefined *puStack_fc;\n  undefined *puStack_f8;\n  int *piStack_f4;\n  undefined *puStack_f0;\n  int iStack_d0;\n  int iStack_cc;\n  int iStack_b8;\n  int iStack_b4;\n  int iStack_b0;\n  int iStack_ac;\n  int *piStack_a8;\n  code *pcStack_a4;\n  undefined4 uStack_98;\n  int *piStack_94;\n  undefined4 local_90;\n  undefined *local_88;\n  int local_80;\n  undefined4 *local_7c;\n  int local_74;\n  undefined4 *local_70;\n  int *local_6c;\n  int local_68;\n  undefined4 local_64;\n  undefined4 local_50;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  undefined2 local_28;\n  int local_24;\n  \n  puVar1 = PTR___stack_chk_guard_0015ba2c;\n  iVar16 = *param_1;\n  local_24 = *(int *)PTR___stack_chk_guard_0015ba2c;\n  piVar5 = param_4;\n  (*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();\n  piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f);\n  if (0 < (int)param_4) {\n    param_4 = (int *)((int)param_4 + (int)piVar13);\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);\n  }\n  local_28 = 0;\n  local_38 = 0;\n  local_3c = 0;\n  local_34 = 0;\n  local_2c = 0;\n  local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360);\n  if (param_1[5] != 0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);\n  }\n  puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c);\n  if (param_1[4] != 0) {\n    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);\n  }\n  puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c);\n  if (puVar4 == (undefined *)0x0) {\nLAB_000f7410:\n    iVar3 = 7;\n  }\n  else {\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }\n  if (local_24 == *(int *)puVar1) {\n    return iVar3;\n  }\n  uVar21 = 0xf7454;\n  iVar8 = local_24;\n  puVar4 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_88 = puVar4 + 0x6c15c;\n  piVar13 = *(int **)(puVar4 + 0x645d8);\n  uVar12 = *(undefined4 *)(iVar8 + 0x24);\n  iVar10 = *(int *)(iVar8 + 0x20);\n  local_7c = (undefined4 *)*piVar13;\n  local_80 = 0;\n  local_74 = iVar3;\n  local_70 = param_5;\n  local_6c = param_1;\n  local_68 = iVar16;\n  local_64 = uVar21;\n  iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10);\n  if (iVar16 == 0) {\n    iVar3 = 7;\n    (**(code **)(local_88 + -0x7f90))(0);\nLAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  else {\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  if (local_7c == (undefined4 *)*piVar13) {\n    return iVar3;\n  }\n  pcVar19 = *(code **)(local_88 + -0x7ba0);\n  pcVar22 = FUN_000f75ec;\n  puVar9 = local_7c;\n  (*pcVar19)();\n  puVar11 = &uStack_98;\n  piVar14 = *(int **)(pcVar19 + 0x64440);\n  iStack_b8 = 0;\n  iStack_b4 = *piVar14;\n  iStack_b0 = iVar8;\n  iStack_ac = iVar3;\n  piStack_a8 = piVar13;\n  pcStack_a4 = pcVar22;\n  uStack_98 = uVar12;\n  piStack_94 = piVar5;\n  puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11);\n  if (puVar9[10] == 0) {\n    if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }\n  }\n  (**(code **)(pcVar19 + 0x64034))(puVar6);\n  if (iStack_b4 == *piVar14) {\n    return iStack_b8;\n  }\n  pcVar22 = *(code **)(pcVar19 + 0x64424);\n  iVar16 = iStack_b4;\n  (*pcVar22)();\n  puStack_f8 = puVar1;\n  piVar13 = *(int **)(pcVar22 + 0x6435c);\n  iStack_11c = 0;\n  iStack_10c = *piVar13;\n  piStack_108 = piVar14;\n  puStack_104 = puVar6;\n  puStack_100 = puVar9;\n  puStack_fc = puVar2;\n  piStack_f4 = param_4;\n  puStack_f0 = unaff_s6;\n  iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);\n    if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    uVar12 = 0xffffffff;\n  }\n  else {\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }\njoined_r0x000f7930:\n  if (iStack_11c == 0) {\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }\nLAB_000f778c:\n  (**(code **)(pcVar22 + 0x63f50))(iVar3);\n  if (iStack_10c == *piVar13) {\n    return iStack_11c;\n  }\n  (**(code **)(pcVar22 + 0x64340))();\n  iVar16 = FUN_000f6c34();\n  return iVar16;\n}" primitive_type (function_declarator "FUN_000f7210(int *param_1,undefined4 param_2,undefined4 param_3,int *param_4,undefined4 *param_5\n                )" identifier (parameter_list "(int *param_1,undefined4 param_2,undefined4 param_3,int *param_4,undefined4 *param_5\n                )" ( (parameter_declaration "int *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "int *param_4" primitive_type (pointer_declarator "*param_4" * identifier)) , (parameter_declaration "undefined4 *param_5" type_identifier (pointer_declarator "*param_5" * identifier)) ))) (compound_statement "{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined *puVar4;\n  int *piVar5;\n  undefined4 *puVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 *puVar9;\n  int iVar10;\n  undefined4 *puVar11;\n  undefined4 uVar12;\n  int *piVar13;\n  int *piVar14;\n  code *pcVar15;\n  int iVar16;\n  int iVar17;\n  undefined *unaff_s6;\n  int iVar18;\n  code *pcVar19;\n  code *pcVar20;\n  undefined4 uVar21;\n  code *pcVar22;\n  int iStack_11c;\n  int iStack_118;\n  undefined4 uStack_114;\n  undefined4 uStack_110;\n  int iStack_10c;\n  int *piStack_108;\n  undefined4 *puStack_104;\n  undefined4 *puStack_100;\n  undefined *puStack_fc;\n  undefined *puStack_f8;\n  int *piStack_f4;\n  undefined *puStack_f0;\n  int iStack_d0;\n  int iStack_cc;\n  int iStack_b8;\n  int iStack_b4;\n  int iStack_b0;\n  int iStack_ac;\n  int *piStack_a8;\n  code *pcStack_a4;\n  undefined4 uStack_98;\n  int *piStack_94;\n  undefined4 local_90;\n  undefined *local_88;\n  int local_80;\n  undefined4 *local_7c;\n  int local_74;\n  undefined4 *local_70;\n  int *local_6c;\n  int local_68;\n  undefined4 local_64;\n  undefined4 local_50;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  undefined2 local_28;\n  int local_24;\n  \n  puVar1 = PTR___stack_chk_guard_0015ba2c;\n  iVar16 = *param_1;\n  local_24 = *(int *)PTR___stack_chk_guard_0015ba2c;\n  piVar5 = param_4;\n  (*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();\n  piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f);\n  if (0 < (int)param_4) {\n    param_4 = (int *)((int)param_4 + (int)piVar13);\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);\n  }\n  local_28 = 0;\n  local_38 = 0;\n  local_3c = 0;\n  local_34 = 0;\n  local_2c = 0;\n  local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360);\n  if (param_1[5] != 0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);\n  }\n  puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c);\n  if (param_1[4] != 0) {\n    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);\n  }\n  puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c);\n  if (puVar4 == (undefined *)0x0) {\nLAB_000f7410:\n    iVar3 = 7;\n  }\n  else {\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }\n  if (local_24 == *(int *)puVar1) {\n    return iVar3;\n  }\n  uVar21 = 0xf7454;\n  iVar8 = local_24;\n  puVar4 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_88 = puVar4 + 0x6c15c;\n  piVar13 = *(int **)(puVar4 + 0x645d8);\n  uVar12 = *(undefined4 *)(iVar8 + 0x24);\n  iVar10 = *(int *)(iVar8 + 0x20);\n  local_7c = (undefined4 *)*piVar13;\n  local_80 = 0;\n  local_74 = iVar3;\n  local_70 = param_5;\n  local_6c = param_1;\n  local_68 = iVar16;\n  local_64 = uVar21;\n  iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10);\n  if (iVar16 == 0) {\n    iVar3 = 7;\n    (**(code **)(local_88 + -0x7f90))(0);\nLAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  else {\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  if (local_7c == (undefined4 *)*piVar13) {\n    return iVar3;\n  }\n  pcVar19 = *(code **)(local_88 + -0x7ba0);\n  pcVar22 = FUN_000f75ec;\n  puVar9 = local_7c;\n  (*pcVar19)();\n  puVar11 = &uStack_98;\n  piVar14 = *(int **)(pcVar19 + 0x64440);\n  iStack_b8 = 0;\n  iStack_b4 = *piVar14;\n  iStack_b0 = iVar8;\n  iStack_ac = iVar3;\n  piStack_a8 = piVar13;\n  pcStack_a4 = pcVar22;\n  uStack_98 = uVar12;\n  piStack_94 = piVar5;\n  puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11);\n  if (puVar9[10] == 0) {\n    if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }\n  }\n  (**(code **)(pcVar19 + 0x64034))(puVar6);\n  if (iStack_b4 == *piVar14) {\n    return iStack_b8;\n  }\n  pcVar22 = *(code **)(pcVar19 + 0x64424);\n  iVar16 = iStack_b4;\n  (*pcVar22)();\n  puStack_f8 = puVar1;\n  piVar13 = *(int **)(pcVar22 + 0x6435c);\n  iStack_11c = 0;\n  iStack_10c = *piVar13;\n  piStack_108 = piVar14;\n  puStack_104 = puVar6;\n  puStack_100 = puVar9;\n  puStack_fc = puVar2;\n  piStack_f4 = param_4;\n  puStack_f0 = unaff_s6;\n  iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);\n    if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    uVar12 = 0xffffffff;\n  }\n  else {\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }\njoined_r0x000f7930:\n  if (iStack_11c == 0) {\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }\nLAB_000f778c:\n  (**(code **)(pcVar22 + 0x63f50))(iVar3);\n  if (iStack_10c == *piVar13) {\n    return iStack_11c;\n  }\n  (**(code **)(pcVar22 + 0x64340))();\n  iVar16 = FUN_000f6c34();\n  return iVar16;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "undefined *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "undefined4 *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "undefined4 *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined4 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "int *piVar13;" primitive_type (pointer_declarator "*piVar13" * identifier) ;) (declaration "int *piVar14;" primitive_type (pointer_declarator "*piVar14" * identifier) ;) (declaration "code *pcVar15;" type_identifier (pointer_declarator "*pcVar15" * identifier) ;) (declaration "int iVar16;" primitive_type identifier ;) (declaration "int iVar17;" primitive_type identifier ;) (declaration "undefined *unaff_s6;" type_identifier (pointer_declarator "*unaff_s6" * identifier) ;) (declaration "int iVar18;" primitive_type identifier ;) (declaration "code *pcVar19;" type_identifier (pointer_declarator "*pcVar19" * identifier) ;) (declaration "code *pcVar20;" type_identifier (pointer_declarator "*pcVar20" * identifier) ;) (declaration "undefined4 uVar21;" type_identifier identifier ;) (declaration "code *pcVar22;" type_identifier (pointer_declarator "*pcVar22" * identifier) ;) (declaration "int iStack_11c;" primitive_type identifier ;) (declaration "int iStack_118;" primitive_type identifier ;) (declaration "undefined4 uStack_114;" type_identifier identifier ;) (declaration "undefined4 uStack_110;" type_identifier identifier ;) (declaration "int iStack_10c;" primitive_type identifier ;) (declaration "int *piStack_108;" primitive_type (pointer_declarator "*piStack_108" * identifier) ;) (declaration "undefined4 *puStack_104;" type_identifier (pointer_declarator "*puStack_104" * identifier) ;) (declaration "undefined4 *puStack_100;" type_identifier (pointer_declarator "*puStack_100" * identifier) ;) (declaration "undefined *puStack_fc;" type_identifier (pointer_declarator "*puStack_fc" * identifier) ;) (declaration "undefined *puStack_f8;" type_identifier (pointer_declarator "*puStack_f8" * identifier) ;) (declaration "int *piStack_f4;" primitive_type (pointer_declarator "*piStack_f4" * identifier) ;) (declaration "undefined *puStack_f0;" type_identifier (pointer_declarator "*puStack_f0" * identifier) ;) (declaration "int iStack_d0;" primitive_type identifier ;) (declaration "int iStack_cc;" primitive_type identifier ;) (declaration "int iStack_b8;" primitive_type identifier ;) (declaration "int iStack_b4;" primitive_type identifier ;) (declaration "int iStack_b0;" primitive_type identifier ;) (declaration "int iStack_ac;" primitive_type identifier ;) (declaration "int *piStack_a8;" primitive_type (pointer_declarator "*piStack_a8" * identifier) ;) (declaration "code *pcStack_a4;" type_identifier (pointer_declarator "*pcStack_a4" * identifier) ;) (declaration "undefined4 uStack_98;" type_identifier identifier ;) (declaration "int *piStack_94;" primitive_type (pointer_declarator "*piStack_94" * identifier) ;) (declaration "undefined4 local_90;" type_identifier identifier ;) (declaration "undefined *local_88;" type_identifier (pointer_declarator "*local_88" * identifier) ;) (declaration "int local_80;" primitive_type identifier ;) (declaration "undefined4 *local_7c;" type_identifier (pointer_declarator "*local_7c" * identifier) ;) (declaration "int local_74;" primitive_type identifier ;) (declaration "undefined4 *local_70;" type_identifier (pointer_declarator "*local_70" * identifier) ;) (declaration "int *local_6c;" primitive_type (pointer_declarator "*local_6c" * identifier) ;) (declaration "int local_68;" primitive_type identifier ;) (declaration "undefined4 local_64;" type_identifier identifier ;) (declaration "undefined4 local_50;" type_identifier identifier ;) (declaration "undefined4 local_3c;" type_identifier identifier ;) (declaration "undefined4 local_38;" type_identifier identifier ;) (declaration "undefined4 local_34;" type_identifier identifier ;) (declaration "undefined4 local_30;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (declaration "undefined2 local_28;" type_identifier identifier ;) (declaration "int local_24;" primitive_type identifier ;) (expression_statement "puVar1 = PTR___stack_chk_guard_0015ba2c;" (assignment_expression "puVar1 = PTR___stack_chk_guard_0015ba2c" identifier = identifier) ;) (expression_statement "iVar16 = *param_1;" (assignment_expression "iVar16 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (expression_statement "local_24 = *(int *)PTR___stack_chk_guard_0015ba2c;" (assignment_expression "local_24 = *(int *)PTR___stack_chk_guard_0015ba2c" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0015ba2c" * (cast_expression "(int *)PTR___stack_chk_guard_0015ba2c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "piVar5 = param_4;" (assignment_expression "piVar5 = param_4" identifier = identifier) ;) (expression_statement "(*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();" (call_expression "(*(code *)(PTR_LAB_0015b6f8 + 0x1b68))()" (parenthesized_expression "(*(code *)(PTR_LAB_0015b6f8 + 0x1b68))" ( (pointer_expression "*(code *)(PTR_LAB_0015b6f8 + 0x1b68)" * (cast_expression "(code *)(PTR_LAB_0015b6f8 + 0x1b68)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0015b6f8 + 0x1b68)" ( (binary_expression "PTR_LAB_0015b6f8 + 0x1b68" identifier + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f);" (assignment_expression "piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f)" identifier = (cast_expression "(int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (unary_expression "-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f)" - (parenthesized_expression "((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f)" ( (binary_expression "(int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f" (cast_expression "(int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a)" ( (binary_expression "(*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a" (parenthesized_expression "(*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20)" ( (binary_expression "*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20" (pointer_expression "*(byte *)(*(int *)(iVar16 + 0x10) + 5)" * (cast_expression "(byte *)(*(int *)(iVar16 + 0x10) + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar16 + 0x10) + 5)" ( (binary_expression "*(int *)(iVar16 + 0x10) + 5" (pointer_expression "*(int *)(iVar16 + 0x10)" * (cast_expression "(int *)(iVar16 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x10)" ( (binary_expression "iVar16 + 0x10" identifier + number_literal) )))) + number_literal) )))) ^ number_literal) )) << number_literal) ))) >> number_literal) ))))) ;) (if_statement "if (0 < (int)param_4) {\n    param_4 = (int *)((int)param_4 + (int)piVar13);\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);\n  }" if (parenthesized_expression "(0 < (int)param_4)" ( (binary_expression "0 < (int)param_4" number_literal < (cast_expression "(int)param_4" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n    param_4 = (int *)((int)param_4 + (int)piVar13);\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);\n  }" { (expression_statement "param_4 = (int *)((int)param_4 + (int)piVar13);" (assignment_expression "param_4 = (int *)((int)param_4 + (int)piVar13)" identifier = (cast_expression "(int *)((int)param_4 + (int)piVar13)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_4 + (int)piVar13)" ( (binary_expression "(int)param_4 + (int)piVar13" (cast_expression "(int)param_4" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)piVar13" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;" (assignment_expression "unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4" identifier = (binary_expression "PTR_LAB_0015b5e8 + 0x71f4" identifier + number_literal)) ;) (do_statement "do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);" do (compound_statement "{\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    }" { (expression_statement "puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);" (assignment_expression "puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5)" identifier = (cast_expression "(undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5)" (parenthesized_expression "(*(code *)PTR_sqlite3_value_text_0015b614)" ( (pointer_expression "*(code *)PTR_sqlite3_value_text_0015b614" * (cast_expression "(code *)PTR_sqlite3_value_text_0015b614" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*param_5)" ( (pointer_expression "*param_5" * identifier) ))))) ;) (if_statement "if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }" if (parenthesized_expression "(puVar2 != (undefined *)0x0)" ( (binary_expression "puVar2 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }" { (expression_statement "iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);" (assignment_expression "iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6)" identifier = (call_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6)" (parenthesized_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)" ( (pointer_expression "*(code *)PTR_sqlite3_mprintf_0015b628" * (cast_expression "(code *)PTR_sqlite3_mprintf_0015b628" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s6)" ( identifier )))) ;) (expression_statement "param_1[(int)(piVar13 + 1)] = iVar3;" (assignment_expression "param_1[(int)(piVar13 + 1)] = iVar3" (subscript_expression "param_1[(int)(piVar13 + 1)]" identifier [ (cast_expression "(int)(piVar13 + 1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar13 + 1)" ( (binary_expression "piVar13 + 1" identifier + number_literal) ))) ]) = identifier) ;) (if_statement "if (iVar3 == 0) goto LAB_000f7410;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000f7410;" goto statement_identifier ;)) })) (expression_statement "piVar13 = (int *)((int)piVar13 + 1);" (assignment_expression "piVar13 = (int *)((int)piVar13 + 1)" identifier = (cast_expression "(int *)((int)piVar13 + 1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar13 + 1)" ( (binary_expression "(int)piVar13 + 1" (cast_expression "(int)piVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "param_5 = param_5 + 1;" (assignment_expression "param_5 = param_5 + 1" identifier = (binary_expression "param_5 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(piVar13 != param_4)" ( (binary_expression "piVar13 != param_4" identifier != identifier) )) ;) })) (expression_statement "local_28 = 0;" (assignment_expression "local_28 = 0" identifier = number_literal) ;) (expression_statement "local_38 = 0;" (assignment_expression "local_38 = 0" identifier = number_literal) ;) (expression_statement "local_3c = 0;" (assignment_expression "local_3c = 0" identifier = number_literal) ;) (expression_statement "local_34 = 0;" (assignment_expression "local_34 = 0" identifier = number_literal) ;) (expression_statement "local_2c = 0;" (assignment_expression "local_2c = 0" identifier = number_literal) ;) (expression_statement "local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70);" (assignment_expression "local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70)" identifier = (pointer_expression "*(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70)" * (cast_expression "(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar16 + 0xc) + 0x70)" ( (binary_expression "*(int *)(iVar16 + 0xc) + 0x70" (pointer_expression "*(int *)(iVar16 + 0xc)" * (cast_expression "(int *)(iVar16 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0xc)" ( (binary_expression "iVar16 + 0xc" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360);" (call_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)" ( (pointer_expression "*(code *)PTR_sqlite3_str_appendall_0015b7c4" * (cast_expression "(code *)PTR_sqlite3_str_appendall_0015b7c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_3c,PTR_UINT_0015b5fc + -0x5360)" ( (pointer_expression "&local_3c" & identifier) , (binary_expression "PTR_UINT_0015b5fc + -0x5360" identifier + number_literal) ))) ;) (if_statement "if (param_1[5] != 0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);\n  }" if (parenthesized_expression "(param_1[5] != 0)" ( (binary_expression "param_1[5] != 0" (subscript_expression "param_1[5]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);\n  }" { (expression_statement "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);" (call_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)" ( (pointer_expression "*(code *)PTR_sqlite3_str_appendf_0015b810" * (cast_expression "(code *)PTR_sqlite3_str_appendf_0015b810" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_3c,PTR_UINT_0015b5fc + -0x5358)" ( (pointer_expression "&local_3c" & identifier) , (binary_expression "PTR_UINT_0015b5fc + -0x5358" identifier + number_literal) ))) ;) })) (expression_statement "puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10);" (assignment_expression "puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10)" identifier = (cast_expression "(undefined *)**(undefined4 **)(iVar16 + 0x10)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(iVar16 + 0x10)" * (pointer_expression "*(undefined4 **)(iVar16 + 0x10)" * (cast_expression "(undefined4 **)(iVar16 + 0x10)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x10)" ( (binary_expression "iVar16 + 0x10" identifier + number_literal) ))))))) ;) (expression_statement "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c);" (call_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)" ( (pointer_expression "*(code *)PTR_sqlite3_str_appendall_0015b7c4" * (cast_expression "(code *)PTR_sqlite3_str_appendall_0015b7c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_3c)" ( (pointer_expression "&local_3c" & identifier) ))) ;) (if_statement "if (param_1[4] != 0) {\n    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);\n  }" if (parenthesized_expression "(param_1[4] != 0)" ( (binary_expression "param_1[4] != 0" (subscript_expression "param_1[4]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);\n  }" { (expression_statement "puVar2 = PTR_LAB_0015b5e8 + 0x55c4;" (assignment_expression "puVar2 = PTR_LAB_0015b5e8 + 0x55c4" identifier = (binary_expression "PTR_LAB_0015b5e8 + 0x55c4" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);" (call_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)" ( (pointer_expression "*(code *)PTR_sqlite3_str_appendf_0015b810" * (cast_expression "(code *)PTR_sqlite3_str_appendf_0015b810" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_3c)" ( (pointer_expression "&local_3c" & identifier) ))) ;) })) (expression_statement "puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c);" (assignment_expression "puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c)" identifier = (cast_expression "(undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c)" (parenthesized_expression "(*(code *)(PTR_LAB_0015b6d8 + -0x2478))" ( (pointer_expression "*(code *)(PTR_LAB_0015b6d8 + -0x2478)" * (cast_expression "(code *)(PTR_LAB_0015b6d8 + -0x2478)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0015b6d8 + -0x2478)" ( (binary_expression "PTR_LAB_0015b6d8 + -0x2478" identifier + number_literal) )))) )) (argument_list "(&local_3c)" ( (pointer_expression "&local_3c" & identifier) ))))) ;) (if_statement "if (puVar4 == (undefined *)0x0) {\nLAB_000f7410:\n    iVar3 = 7;\n  }\n  else {\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }" if (parenthesized_expression "(puVar4 == (undefined *)0x0)" ( (binary_expression "puVar4 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000f7410:\n    iVar3 = 7;\n  }" { (labeled_statement "LAB_000f7410:\n    iVar3 = 7;" statement_identifier : (expression_statement "iVar3 = 7;" (assignment_expression "iVar3 = 7" identifier = number_literal) ;)) }) (else_clause "else {\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }" else (compound_statement "{\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }" { (expression_statement "piVar5 = param_1 + 1;" (assignment_expression "piVar5 = param_1 + 1" identifier = (binary_expression "param_1 + 1" identifier + number_literal)) ;) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) (expression_statement "puVar2 = puVar4;" (assignment_expression "puVar2 = puVar4" identifier = identifier) ;) (expression_statement "iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);" (assignment_expression "iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff)" identifier = (call_expression "sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff)" identifier (argument_list "(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff)" ( (pointer_expression "*(undefined4 *)(iVar16 + 0xc)" * (cast_expression "(undefined4 *)(iVar16 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0xc)" ( (binary_expression "iVar16 + 0xc" identifier + number_literal) )))) , identifier , number_literal )))) ;) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(puVar4);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(puVar4)" (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 "(puVar4)" ( identifier ))) ;) (if_statement "if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      iVar3 = FUN_000ddfb0(param_1);\n    }" { (expression_statement "iVar3 = FUN_000ddfb0(param_1);" (assignment_expression "iVar3 = FUN_000ddfb0(param_1)" identifier = (call_expression "FUN_000ddfb0(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) }) (else_clause "else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }" else (compound_statement "{\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }" { (expression_statement "puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));" (assignment_expression "puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc))" identifier = (cast_expression "(undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc))" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc))" (parenthesized_expression "(*(code *)PTR_sqlite3_errmsg_0015b624)" ( (pointer_expression "*(code *)PTR_sqlite3_errmsg_0015b624" * (cast_expression "(code *)PTR_sqlite3_errmsg_0015b624" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)(iVar16 + 0xc))" ( (pointer_expression "*(undefined4 *)(iVar16 + 0xc)" * (cast_expression "(undefined4 *)(iVar16 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0xc)" ( (binary_expression "iVar16 + 0xc" identifier + number_literal) )))) ))))) ;) (expression_statement "uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);" (assignment_expression "uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4)" identifier = (call_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4)" (parenthesized_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)" ( (pointer_expression "*(code *)PTR_sqlite3_mprintf_0015b628" * (cast_expression "(code *)PTR_sqlite3_mprintf_0015b628" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_LAB_0015b5e8 + 0x71f4)" ( (binary_expression "PTR_LAB_0015b5e8 + 0x71f4" identifier + number_literal) )))) ;) (expression_statement "*(undefined4 *)(iVar16 + 8) = uVar12;" (assignment_expression "*(undefined4 *)(iVar16 + 8) = uVar12" (pointer_expression "*(undefined4 *)(iVar16 + 8)" * (cast_expression "(undefined4 *)(iVar16 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 8)" ( (binary_expression "iVar16 + 8" identifier + number_literal) )))) = identifier) ;) }))) }))) (if_statement "if (local_24 == *(int *)puVar1) {\n    return iVar3;\n  }" if (parenthesized_expression "(local_24 == *(int *)puVar1)" ( (binary_expression "local_24 == *(int *)puVar1" identifier == (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return iVar3;\n  }" { (return_statement "return iVar3;" return identifier ;) })) (expression_statement "uVar21 = 0xf7454;" (assignment_expression "uVar21 = 0xf7454" identifier = number_literal) ;) (expression_statement "iVar8 = local_24;" (assignment_expression "iVar8 = local_24" identifier = identifier) ;) (expression_statement "puVar4 = PTR___stack_chk_fail_0015ba10;" (assignment_expression "puVar4 = 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_88 = puVar4 + 0x6c15c;" (assignment_expression "local_88 = puVar4 + 0x6c15c" identifier = (binary_expression "puVar4 + 0x6c15c" identifier + number_literal)) ;) (expression_statement "piVar13 = *(int **)(puVar4 + 0x645d8);" (assignment_expression "piVar13 = *(int **)(puVar4 + 0x645d8)" identifier = (pointer_expression "*(int **)(puVar4 + 0x645d8)" * (cast_expression "(int **)(puVar4 + 0x645d8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar4 + 0x645d8)" ( (binary_expression "puVar4 + 0x645d8" identifier + number_literal) ))))) ;) (expression_statement "uVar12 = *(undefined4 *)(iVar8 + 0x24);" (assignment_expression "uVar12 = *(undefined4 *)(iVar8 + 0x24)" identifier = (pointer_expression "*(undefined4 *)(iVar8 + 0x24)" * (cast_expression "(undefined4 *)(iVar8 + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x24)" ( (binary_expression "iVar8 + 0x24" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(iVar8 + 0x20);" (assignment_expression "iVar10 = *(int *)(iVar8 + 0x20)" identifier = (pointer_expression "*(int *)(iVar8 + 0x20)" * (cast_expression "(int *)(iVar8 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x20)" ( (binary_expression "iVar8 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "local_7c = (undefined4 *)*piVar13;" (assignment_expression "local_7c = (undefined4 *)*piVar13" identifier = (cast_expression "(undefined4 *)*piVar13" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar13" * identifier))) ;) (expression_statement "local_80 = 0;" (assignment_expression "local_80 = 0" identifier = number_literal) ;) (expression_statement "local_74 = iVar3;" (assignment_expression "local_74 = iVar3" identifier = identifier) ;) (expression_statement "local_70 = param_5;" (assignment_expression "local_70 = param_5" identifier = identifier) ;) (expression_statement "local_6c = param_1;" (assignment_expression "local_6c = param_1" identifier = identifier) ;) (expression_statement "local_68 = iVar16;" (assignment_expression "local_68 = iVar16" identifier = identifier) ;) (expression_statement "local_64 = uVar21;" (assignment_expression "local_64 = uVar21" identifier = identifier) ;) (expression_statement "iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10);" (assignment_expression "iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10)" identifier = (call_expression "(**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10)" (parenthesized_expression "(**(code **)(puVar4 + 0x641d4))" ( (pointer_expression "**(code **)(puVar4 + 0x641d4)" * (pointer_expression "*(code **)(puVar4 + 0x641d4)" * (cast_expression "(code **)(puVar4 + 0x641d4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar4 + 0x641d4)" ( (binary_expression "puVar4 + 0x641d4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10)" ( (binary_expression "*(int *)(puVar4 + 0x641a8) + -0x5354" (pointer_expression "*(int *)(puVar4 + 0x641a8)" * (cast_expression "(int *)(puVar4 + 0x641a8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar4 + 0x641a8)" ( (binary_expression "puVar4 + 0x641a8" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (if_statement "if (iVar16 == 0) {\n    iVar3 = 7;\n    (**(code **)(local_88 + -0x7f90))(0);\nLAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  else {\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }" if (parenthesized_expression "(iVar16 == 0)" ( (binary_expression "iVar16 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar3 = 7;\n    (**(code **)(local_88 + -0x7f90))(0);\nLAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }" { (expression_statement "iVar3 = 7;" (assignment_expression "iVar3 = 7" identifier = number_literal) ;) (expression_statement "(**(code **)(local_88 + -0x7f90))(0);" (call_expression "(**(code **)(local_88 + -0x7f90))(0)" (parenthesized_expression "(**(code **)(local_88 + -0x7f90))" ( (pointer_expression "**(code **)(local_88 + -0x7f90)" * (pointer_expression "*(code **)(local_88 + -0x7f90)" * (cast_expression "(code **)(local_88 + -0x7f90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7f90)" ( (binary_expression "local_88 + -0x7f90" identifier + number_literal) ))))) )) (argument_list "(0)" ( number_literal ))) ;) (labeled_statement "LAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);" statement_identifier : (expression_statement "(**(code **)(local_88 + -0x7f74))(local_80);" (call_expression "(**(code **)(local_88 + -0x7f74))(local_80)" (parenthesized_expression "(**(code **)(local_88 + -0x7f74))" ( (pointer_expression "**(code **)(local_88 + -0x7f74)" * (pointer_expression "*(code **)(local_88 + -0x7f74)" * (cast_expression "(code **)(local_88 + -0x7f74)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7f74)" ( (binary_expression "local_88 + -0x7f74" identifier + number_literal) ))))) )) (argument_list "(local_80)" ( identifier ))) ;)) }) (else_clause "else {\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }" else (compound_statement "{\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }" { (expression_statement "piVar5 = &local_80;" (assignment_expression "piVar5 = &local_80" identifier = (pointer_expression "&local_80" & identifier)) ;) (expression_statement "uVar12 = 0xffffffff;" (assignment_expression "uVar12 = 0xffffffff" identifier = number_literal) ;) (expression_statement "local_90 = 0;" (assignment_expression "local_90 = 0" identifier = number_literal) ;) (expression_statement "iVar10 = iVar16;" (assignment_expression "iVar10 = iVar16" identifier = identifier) ;) (expression_statement "iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);" (assignment_expression "iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16)" identifier = (call_expression "sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16)" identifier (argument_list "(*(undefined4 *)(iVar8 + 0xc),iVar16)" ( (pointer_expression "*(undefined4 *)(iVar8 + 0xc)" * (cast_expression "(undefined4 *)(iVar8 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0xc)" ( (binary_expression "iVar8 + 0xc" identifier + number_literal) )))) , identifier )))) ;) (expression_statement "(**(code **)(local_88 + -0x7f90))(iVar16);" (call_expression "(**(code **)(local_88 + -0x7f90))(iVar16)" (parenthesized_expression "(**(code **)(local_88 + -0x7f90))" ( (pointer_expression "**(code **)(local_88 + -0x7f90)" * (pointer_expression "*(code **)(local_88 + -0x7f90)" * (cast_expression "(code **)(local_88 + -0x7f90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7f90)" ( (binary_expression "local_88 + -0x7f90" identifier + number_literal) ))))) )) (argument_list "(iVar16)" ( identifier ))) ;) (if_statement "if (iVar3 != 0) goto LAB_000f7558;" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000f7558;" goto statement_identifier ;)) (if_statement "if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }" if (parenthesized_expression "(puVar2 == (undefined *)0x0)" ( (binary_expression "puVar2 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }" { (expression_statement "uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);" (assignment_expression "uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0)" identifier = (call_expression "(**(code **)(local_88 + -0x7d2c))(local_80,0)" (parenthesized_expression "(**(code **)(local_88 + -0x7d2c))" ( (pointer_expression "**(code **)(local_88 + -0x7d2c)" * (pointer_expression "*(code **)(local_88 + -0x7d2c)" * (cast_expression "(code **)(local_88 + -0x7d2c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7d2c)" ( (binary_expression "local_88 + -0x7d2c" identifier + number_literal) ))))) )) (argument_list "(local_80,0)" ( identifier , number_literal )))) ;) (expression_statement "iVar10 = *(int *)(iVar8 + 0x24);" (assignment_expression "iVar10 = *(int *)(iVar8 + 0x24)" identifier = (pointer_expression "*(int *)(iVar8 + 0x24)" * (cast_expression "(int *)(iVar8 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x24)" ( (binary_expression "iVar8 + 0x24" identifier + number_literal) ))))) ;) (expression_statement "uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);" (assignment_expression "uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10)" identifier = (call_expression "(**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10)" (parenthesized_expression "(**(code **)(local_88 + -0x7f88))" ( (pointer_expression "**(code **)(local_88 + -0x7f88)" * (pointer_expression "*(code **)(local_88 + -0x7f88)" * (cast_expression "(code **)(local_88 + -0x7f88)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7f88)" ( (binary_expression "local_88 + -0x7f88" identifier + number_literal) ))))) )) (argument_list "(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10)" ( (binary_expression "*(int *)(local_88 + -0x7fb4) + -0x5340" (pointer_expression "*(int *)(local_88 + -0x7fb4)" * (cast_expression "(int *)(local_88 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_88 + -0x7fb4)" ( (binary_expression "local_88 + -0x7fb4" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (expression_statement "*(undefined4 *)(iVar8 + 8) = uVar21;" (assignment_expression "*(undefined4 *)(iVar8 + 8) = uVar21" (pointer_expression "*(undefined4 *)(iVar8 + 8)" * (cast_expression "(undefined4 *)(iVar8 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 8)" ( (binary_expression "iVar8 + 8" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }" else (compound_statement "{\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }" { (expression_statement "uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);" (assignment_expression "uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2)" identifier = (call_expression "(**(code **)(local_88 + -0x7d2c))(local_80,puVar2)" (parenthesized_expression "(**(code **)(local_88 + -0x7d2c))" ( (pointer_expression "**(code **)(local_88 + -0x7d2c)" * (pointer_expression "*(code **)(local_88 + -0x7d2c)" * (cast_expression "(code **)(local_88 + -0x7d2c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7d2c)" ( (binary_expression "local_88 + -0x7d2c" identifier + number_literal) ))))) )) (argument_list "(local_80,puVar2)" ( identifier , identifier )))) ;) (expression_statement "piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);" (assignment_expression "piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1)" identifier = (cast_expression "(int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1)" (parenthesized_expression "(**(code **)(local_88 + -0x7d2c))" ( (pointer_expression "**(code **)(local_88 + -0x7d2c)" * (pointer_expression "*(code **)(local_88 + -0x7d2c)" * (cast_expression "(code **)(local_88 + -0x7d2c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7d2c)" ( (binary_expression "local_88 + -0x7d2c" identifier + number_literal) ))))) )) (argument_list "(local_80,puVar2 + 1)" ( identifier , (binary_expression "puVar2 + 1" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(iVar8 + 0x24);" (assignment_expression "iVar10 = *(int *)(iVar8 + 0x24)" identifier = (pointer_expression "*(int *)(iVar8 + 0x24)" * (cast_expression "(int *)(iVar8 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x24)" ( (binary_expression "iVar8 + 0x24" identifier + number_literal) ))))) ;) (expression_statement "uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);" (assignment_expression "uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10)" identifier = (call_expression "(**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10)" (parenthesized_expression "(**(code **)(local_88 + -0x7f88))" ( (pointer_expression "**(code **)(local_88 + -0x7f88)" * (pointer_expression "*(code **)(local_88 + -0x7f88)" * (cast_expression "(code **)(local_88 + -0x7f88)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7f88)" ( (binary_expression "local_88 + -0x7f88" identifier + number_literal) ))))) )) (argument_list "(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10)" ( (binary_expression "*(int *)(local_88 + -0x7fb4) + -0x5320" (pointer_expression "*(int *)(local_88 + -0x7fb4)" * (cast_expression "(int *)(local_88 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_88 + -0x7fb4)" ( (binary_expression "local_88 + -0x7fb4" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (expression_statement "*(undefined4 *)(iVar8 + 8) = uVar21;" (assignment_expression "*(undefined4 *)(iVar8 + 8) = uVar21" (pointer_expression "*(undefined4 *)(iVar8 + 8)" * (cast_expression "(undefined4 *)(iVar8 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 8)" ( (binary_expression "iVar8 + 8" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "iVar3 = 0x13;" (assignment_expression "iVar3 = 0x13" identifier = number_literal) ;) (expression_statement "(**(code **)(local_88 + -0x7f74))(local_80);" (call_expression "(**(code **)(local_88 + -0x7f74))(local_80)" (parenthesized_expression "(**(code **)(local_88 + -0x7f74))" ( (pointer_expression "**(code **)(local_88 + -0x7f74)" * (pointer_expression "*(code **)(local_88 + -0x7f74)" * (cast_expression "(code **)(local_88 + -0x7f74)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7f74)" ( (binary_expression "local_88 + -0x7f74" identifier + number_literal) ))))) )) (argument_list "(local_80)" ( identifier ))) ;) }))) (if_statement "if (local_7c == (undefined4 *)*piVar13) {\n    return iVar3;\n  }" if (parenthesized_expression "(local_7c == (undefined4 *)*piVar13)" ( (binary_expression "local_7c == (undefined4 *)*piVar13" identifier == (cast_expression "(undefined4 *)*piVar13" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar13" * identifier))) )) (compound_statement "{\n    return iVar3;\n  }" { (return_statement "return iVar3;" return identifier ;) })) (expression_statement "pcVar19 = *(code **)(local_88 + -0x7ba0);" (assignment_expression "pcVar19 = *(code **)(local_88 + -0x7ba0)" identifier = (pointer_expression "*(code **)(local_88 + -0x7ba0)" * (cast_expression "(code **)(local_88 + -0x7ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7ba0)" ( (binary_expression "local_88 + -0x7ba0" identifier + number_literal) ))))) ;) (expression_statement "pcVar22 = FUN_000f75ec;" (assignment_expression "pcVar22 = FUN_000f75ec" identifier = identifier) ;) (expression_statement "puVar9 = local_7c;" (assignment_expression "puVar9 = local_7c" identifier = identifier) ;) (expression_statement "(*pcVar19)();" (call_expression "(*pcVar19)()" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puVar11 = &uStack_98;" (assignment_expression "puVar11 = &uStack_98" identifier = (pointer_expression "&uStack_98" & identifier)) ;) (expression_statement "piVar14 = *(int **)(pcVar19 + 0x64440);" (assignment_expression "piVar14 = *(int **)(pcVar19 + 0x64440)" identifier = (pointer_expression "*(int **)(pcVar19 + 0x64440)" * (cast_expression "(int **)(pcVar19 + 0x64440)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0x64440)" ( (binary_expression "pcVar19 + 0x64440" identifier + number_literal) ))))) ;) (expression_statement "iStack_b8 = 0;" (assignment_expression "iStack_b8 = 0" identifier = number_literal) ;) (expression_statement "iStack_b4 = *piVar14;" (assignment_expression "iStack_b4 = *piVar14" identifier = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "iStack_b0 = iVar8;" (assignment_expression "iStack_b0 = iVar8" identifier = identifier) ;) (expression_statement "iStack_ac = iVar3;" (assignment_expression "iStack_ac = iVar3" identifier = identifier) ;) (expression_statement "piStack_a8 = piVar13;" (assignment_expression "piStack_a8 = piVar13" identifier = identifier) ;) (expression_statement "pcStack_a4 = pcVar22;" (assignment_expression "pcStack_a4 = pcVar22" identifier = identifier) ;) (expression_statement "uStack_98 = uVar12;" (assignment_expression "uStack_98 = uVar12" identifier = identifier) ;) (expression_statement "piStack_94 = piVar5;" (assignment_expression "piStack_94 = piVar5" identifier = identifier) ;) (expression_statement "puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11);" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11)" identifier = (cast_expression "(undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11)" (parenthesized_expression "(**(code **)(pcVar19 + 0x6402c))" ( (pointer_expression "**(code **)(pcVar19 + 0x6402c)" * (pointer_expression "*(code **)(pcVar19 + 0x6402c)" * (cast_expression "(code **)(pcVar19 + 0x6402c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0x6402c)" ( (binary_expression "pcVar19 + 0x6402c" identifier + number_literal) ))))) )) (argument_list "(iVar10,puVar11)" ( identifier , identifier ))))) ;) (if_statement "if (puVar9[10] == 0) {\n    if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }\n  }" if (parenthesized_expression "(puVar9[10] == 0)" ( (binary_expression "puVar9[10] == 0" (subscript_expression "puVar9[10]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n    if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }\n  }" { (if_statement "if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }" if (parenthesized_expression "(puVar6 == (undefined4 *)0x0)" ( (binary_expression "puVar6 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      puVar9[10] = 7;\n    }" { (expression_statement "puVar9[10] = 7;" (assignment_expression "puVar9[10] = 7" (subscript_expression "puVar9[10]" identifier [ number_literal ]) = number_literal) ;) }) (else_clause "else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }" else (compound_statement "{\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }" { (expression_statement "piVar5 = &iStack_b8;" (assignment_expression "piVar5 = &iStack_b8" identifier = (pointer_expression "&iStack_b8" & identifier)) ;) (expression_statement "uVar12 = 0xffffffff;" (assignment_expression "uVar12 = 0xffffffff" identifier = number_literal) ;) (expression_statement "iStack_d0 = 0;" (assignment_expression "iStack_d0 = 0" identifier = number_literal) ;) (expression_statement "puVar11 = puVar6;" (assignment_expression "puVar11 = puVar6" identifier = identifier) ;) (expression_statement "uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);" (assignment_expression "uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff)" identifier = (call_expression "sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff)" identifier (argument_list "(*puVar9,puVar6,0xffffffff)" ( (pointer_expression "*puVar9" * identifier) , identifier , number_literal )))) ;) (expression_statement "puVar9[10] = uVar21;" (assignment_expression "puVar9[10] = uVar21" (subscript_expression "puVar9[10]" identifier [ number_literal ]) = identifier) ;) }))) })) (expression_statement "(**(code **)(pcVar19 + 0x64034))(puVar6);" (call_expression "(**(code **)(pcVar19 + 0x64034))(puVar6)" (parenthesized_expression "(**(code **)(pcVar19 + 0x64034))" ( (pointer_expression "**(code **)(pcVar19 + 0x64034)" * (pointer_expression "*(code **)(pcVar19 + 0x64034)" * (cast_expression "(code **)(pcVar19 + 0x64034)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0x64034)" ( (binary_expression "pcVar19 + 0x64034" identifier + number_literal) ))))) )) (argument_list "(puVar6)" ( identifier ))) ;) (if_statement "if (iStack_b4 == *piVar14) {\n    return iStack_b8;\n  }" if (parenthesized_expression "(iStack_b4 == *piVar14)" ( (binary_expression "iStack_b4 == *piVar14" identifier == (pointer_expression "*piVar14" * identifier)) )) (compound_statement "{\n    return iStack_b8;\n  }" { (return_statement "return iStack_b8;" return identifier ;) })) (expression_statement "pcVar22 = *(code **)(pcVar19 + 0x64424);" (assignment_expression "pcVar22 = *(code **)(pcVar19 + 0x64424)" identifier = (pointer_expression "*(code **)(pcVar19 + 0x64424)" * (cast_expression "(code **)(pcVar19 + 0x64424)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0x64424)" ( (binary_expression "pcVar19 + 0x64424" identifier + number_literal) ))))) ;) (expression_statement "iVar16 = iStack_b4;" (assignment_expression "iVar16 = iStack_b4" identifier = identifier) ;) (expression_statement "(*pcVar22)();" (call_expression "(*pcVar22)()" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puStack_f8 = puVar1;" (assignment_expression "puStack_f8 = puVar1" identifier = identifier) ;) (expression_statement "piVar13 = *(int **)(pcVar22 + 0x6435c);" (assignment_expression "piVar13 = *(int **)(pcVar22 + 0x6435c)" identifier = (pointer_expression "*(int **)(pcVar22 + 0x6435c)" * (cast_expression "(int **)(pcVar22 + 0x6435c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x6435c)" ( (binary_expression "pcVar22 + 0x6435c" identifier + number_literal) ))))) ;) (expression_statement "iStack_11c = 0;" (assignment_expression "iStack_11c = 0" identifier = number_literal) ;) (expression_statement "iStack_10c = *piVar13;" (assignment_expression "iStack_10c = *piVar13" identifier = (pointer_expression "*piVar13" * identifier)) ;) (expression_statement "piStack_108 = piVar14;" (assignment_expression "piStack_108 = piVar14" identifier = identifier) ;) (expression_statement "puStack_104 = puVar6;" (assignment_expression "puStack_104 = puVar6" identifier = identifier) ;) (expression_statement "puStack_100 = puVar9;" (assignment_expression "puStack_100 = puVar9" identifier = identifier) ;) (expression_statement "puStack_fc = puVar2;" (assignment_expression "puStack_fc = puVar2" identifier = identifier) ;) (expression_statement "piStack_f4 = param_4;" (assignment_expression "piStack_f4 = param_4" identifier = identifier) ;) (expression_statement "puStack_f0 = unaff_s6;" (assignment_expression "puStack_f0 = unaff_s6" identifier = identifier) ;) (expression_statement "iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12);" (assignment_expression "iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12)" identifier = (call_expression "(**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12)" (parenthesized_expression "(**(code **)(pcVar22 + 0x63f68))" ( (pointer_expression "**(code **)(pcVar22 + 0x63f68)" * (pointer_expression "*(code **)(pcVar22 + 0x63f68)" * (cast_expression "(code **)(pcVar22 + 0x63f68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x63f68)" ( (binary_expression "pcVar22 + 0x63f68" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12)" ( (binary_expression "*(int *)(pcVar22 + 0x63f2c) + -0x65b0" (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" * (cast_expression "(int *)(pcVar22 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f2c)" ( (binary_expression "pcVar22 + 0x63f2c" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);\n    if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    uVar12 = 0xffffffff;\n  }\n  else {\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);\n    if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    uVar12 = 0xffffffff;\n  }" { (expression_statement "iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);" (assignment_expression "iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11)" identifier = (call_expression "(**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11)" (parenthesized_expression "(**(code **)(pcVar22 + 0x63f58))" ( (pointer_expression "**(code **)(pcVar22 + 0x63f58)" * (pointer_expression "*(code **)(pcVar22 + 0x63f58)" * (cast_expression "(code **)(pcVar22 + 0x63f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x63f58)" ( (binary_expression "pcVar22 + 0x63f58" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11)" ( (binary_expression "*(int *)(pcVar22 + 0x63f2c) + -0x52f8" (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" * (cast_expression "(int *)(pcVar22 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f2c)" ( (binary_expression "pcVar22 + 0x63f2c" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }" { (expression_statement "iStack_11c = 7;" (assignment_expression "iStack_11c = 7" identifier = number_literal) ;) (goto_statement "goto LAB_000f778c;" goto statement_identifier ;) })) (expression_statement "uVar12 = 0xffffffff;" (assignment_expression "uVar12 = 0xffffffff" identifier = number_literal) ;) }) (else_clause "else {\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }" else (compound_statement "{\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }" { (expression_statement "iStack_118 = 0;" (assignment_expression "iStack_118 = 0" identifier = number_literal) ;) (expression_statement "pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);" (assignment_expression "pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4)" identifier = (cast_expression "(code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar22 + 0x6404c) + -0x1bd4)" ( (binary_expression "*(int *)(pcVar22 + 0x6404c) + -0x1bd4" (pointer_expression "*(int *)(pcVar22 + 0x6404c)" * (cast_expression "(int *)(pcVar22 + 0x6404c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x6404c)" ( (binary_expression "pcVar22 + 0x6404c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "uStack_114 = 0;" (assignment_expression "uStack_114 = 0" identifier = number_literal) ;) (expression_statement "uStack_110 = 0;" (assignment_expression "uStack_110 = 0" identifier = number_literal) ;) (expression_statement "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , (binary_expression "*(int *)(pcVar22 + 0x63f2c) + -0x5288" (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" * (cast_expression "(int *)(pcVar22 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f2c)" ( (binary_expression "pcVar22 + 0x63f2c" identifier + number_literal) )))) + number_literal) , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);" (assignment_expression "pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4)" identifier = (cast_expression "(code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar22 + 0x6404c) + -0x1cd4)" ( (binary_expression "*(int *)(pcVar22 + 0x6404c) + -0x1cd4" (pointer_expression "*(int *)(pcVar22 + 0x6404c)" * (cast_expression "(int *)(pcVar22 + 0x6404c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x6404c)" ( (binary_expression "pcVar22 + 0x6404c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar20)(&iStack_118,puVar11,&iStack_11c);" (call_expression "(*pcVar20)(&iStack_118,puVar11,&iStack_11c)" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(&iStack_118,puVar11,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , identifier , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , (binary_expression "*(int *)(pcVar22 + 0x63f2c) + -0x1e34" (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" * (cast_expression "(int *)(pcVar22 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f2c)" ( (binary_expression "pcVar22 + 0x63f2c" identifier + number_literal) )))) + number_literal) , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*pcVar20)(&iStack_118,uVar12,&iStack_11c);" (call_expression "(*pcVar20)(&iStack_118,uVar12,&iStack_11c)" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(&iStack_118,uVar12,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , identifier , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , (binary_expression "*(int *)(pcVar22 + 0x63f18) + 0x5cfc" (pointer_expression "*(int *)(pcVar22 + 0x63f18)" * (cast_expression "(int *)(pcVar22 + 0x63f18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f18)" ( (binary_expression "pcVar22 + 0x63f18" identifier + number_literal) )))) + number_literal) , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "iVar3 = iStack_118;" (assignment_expression "iVar3 = iStack_118" identifier = identifier) ;) (expression_statement "uVar12 = uStack_114;" (assignment_expression "uVar12 = uStack_114" identifier = identifier) ;) (if_statement "if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }" if (parenthesized_expression "(0 < (int)piVar5)" ( (binary_expression "0 < (int)piVar5" number_literal < (cast_expression "(int)piVar5" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }" { (expression_statement "iVar10 = *(int *)(pcVar22 + 0x6404c);" (assignment_expression "iVar10 = *(int *)(pcVar22 + 0x6404c)" identifier = (pointer_expression "*(int *)(pcVar22 + 0x6404c)" * (cast_expression "(int *)(pcVar22 + 0x6404c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x6404c)" ( (binary_expression "pcVar22 + 0x6404c" identifier + number_literal) ))))) ;) (expression_statement "piVar14 = (int *)0x0;" (assignment_expression "piVar14 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar17 = *(int *)(pcVar22 + 0x63f18);" (assignment_expression "iVar17 = *(int *)(pcVar22 + 0x63f18)" identifier = (pointer_expression "*(int *)(pcVar22 + 0x63f18)" * (cast_expression "(int *)(pcVar22 + 0x63f18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f18)" ( (binary_expression "pcVar22 + 0x63f18" identifier + number_literal) ))))) ;) (expression_statement "iVar18 = *(int *)(pcVar22 + 0x63f2c);" (assignment_expression "iVar18 = *(int *)(pcVar22 + 0x63f2c)" identifier = (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" * (cast_expression "(int *)(pcVar22 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f2c)" ( (binary_expression "pcVar22 + 0x63f2c" identifier + number_literal) ))))) ;) (expression_statement "iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;" (assignment_expression "iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4" identifier = (binary_expression "*(int *)(pcVar22 + 0x63f18) + 0x53f4" (pointer_expression "*(int *)(pcVar22 + 0x63f18)" * (cast_expression "(int *)(pcVar22 + 0x63f18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f18)" ( (binary_expression "pcVar22 + 0x63f18" identifier + number_literal) )))) + number_literal)) ;) (do_statement "do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);" do (compound_statement "{\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      }" { (while_statement "while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }" while (parenthesized_expression "(pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0')" ( (comma_expression "pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0'" (assignment_expression "pcVar7 = (char *)(iStack_cc + (int)piVar14)" identifier = (cast_expression "(char *)(iStack_cc + (int)piVar14)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_cc + (int)piVar14)" ( (binary_expression "iStack_cc + (int)piVar14" identifier + (cast_expression "(int)piVar14" ( (type_descriptor "int" primitive_type) ) identifier)) )))) , (comma_expression "piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0'" (assignment_expression "piVar14 = (int *)((int)piVar14 + 1)" identifier = (cast_expression "(int *)((int)piVar14 + 1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar14 + 1)" ( (binary_expression "(int)piVar14 + 1" (cast_expression "(int)piVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (binary_expression "*pcVar7 != '\0'" (pointer_expression "*pcVar7" * identifier) != (char_literal "'\0'" ' escape_sequence ')))) )) (compound_statement "{\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }" { (expression_statement "(*pcVar15)(&iStack_118,iVar8,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,iVar8,&iStack_11c)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(&iStack_118,iVar8,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , identifier , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);" (call_expression "(*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c)" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , (pointer_expression "*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4)" * (cast_expression "(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_d0 + (int)piVar14 * 4 + -4)" ( (binary_expression "iStack_d0 + (int)piVar14 * 4 + -4" (binary_expression "iStack_d0 + (int)piVar14 * 4" identifier + (binary_expression "(int)piVar14 * 4" (cast_expression "(int)piVar14" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) + number_literal) )))) , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(&iStack_118,iVar18 + -0x5278,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , (binary_expression "iVar18 + -0x5278" identifier + number_literal) , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);" (call_expression "(*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c)" (parenthesized_expression "(*(code *)(iVar10 + -0x1b0c))" ( (pointer_expression "*(code *)(iVar10 + -0x1b0c)" * (cast_expression "(code *)(iVar10 + -0x1b0c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x1b0c)" ( (binary_expression "iVar10 + -0x1b0c" identifier + number_literal) )))) )) (argument_list "(&iStack_118,piVar14,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , identifier , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "iVar8 = iVar17 + 0x5c88;" (assignment_expression "iVar8 = iVar17 + 0x5c88" identifier = (binary_expression "iVar17 + 0x5c88" identifier + number_literal)) ;) (expression_statement "iVar3 = iStack_118;" (assignment_expression "iVar3 = iStack_118" identifier = identifier) ;) (expression_statement "uVar12 = uStack_114;" (assignment_expression "uVar12 = uStack_114" identifier = identifier) ;) (if_statement "if (piVar5 == piVar14) goto joined_r0x000f7930;" if (parenthesized_expression "(piVar5 == piVar14)" ( (binary_expression "piVar5 == piVar14" identifier == identifier) )) (goto_statement "goto joined_r0x000f7930;" goto statement_identifier ;)) })) (expression_statement "iVar3 = iStack_118;" (assignment_expression "iVar3 = iStack_118" identifier = identifier) ;) (expression_statement "uVar12 = uStack_114;" (assignment_expression "uVar12 = uStack_114" identifier = identifier) ;) }) while (parenthesized_expression "(piVar5 != piVar14)" ( (binary_expression "piVar5 != piVar14" identifier != identifier) )) ;) })) }))) (labeled_statement "joined_r0x000f7930:\n  if (iStack_11c == 0) {\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }" statement_identifier : (if_statement "if (iStack_11c == 0) {\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }" if (parenthesized_expression "(iStack_11c == 0)" ( (binary_expression "iStack_11c == 0" identifier == number_literal) )) (compound_statement "{\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }" { (expression_statement "iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);" (assignment_expression "iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0)" identifier = (call_expression "sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0)" identifier (argument_list "(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0)" ( identifier , identifier , identifier , (binary_expression "pcVar19 + 0x6bfc4" identifier + number_literal) , number_literal )))) ;) }))) (labeled_statement "LAB_000f778c:\n  (**(code **)(pcVar22 + 0x63f50))(iVar3);" statement_identifier : (expression_statement "(**(code **)(pcVar22 + 0x63f50))(iVar3);" (call_expression "(**(code **)(pcVar22 + 0x63f50))(iVar3)" (parenthesized_expression "(**(code **)(pcVar22 + 0x63f50))" ( (pointer_expression "**(code **)(pcVar22 + 0x63f50)" * (pointer_expression "*(code **)(pcVar22 + 0x63f50)" * (cast_expression "(code **)(pcVar22 + 0x63f50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x63f50)" ( (binary_expression "pcVar22 + 0x63f50" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;)) (if_statement "if (iStack_10c == *piVar13) {\n    return iStack_11c;\n  }" if (parenthesized_expression "(iStack_10c == *piVar13)" ( (binary_expression "iStack_10c == *piVar13" identifier == (pointer_expression "*piVar13" * identifier)) )) (compound_statement "{\n    return iStack_11c;\n  }" { (return_statement "return iStack_11c;" return identifier ;) })) (expression_statement "(**(code **)(pcVar22 + 0x64340))();" (call_expression "(**(code **)(pcVar22 + 0x64340))()" (parenthesized_expression "(**(code **)(pcVar22 + 0x64340))" ( (pointer_expression "**(code **)(pcVar22 + 0x64340)" * (pointer_expression "*(code **)(pcVar22 + 0x64340)" * (cast_expression "(code **)(pcVar22 + 0x64340)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x64340)" ( (binary_expression "pcVar22 + 0x64340" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar16 = FUN_000f6c34();" (assignment_expression "iVar16 = FUN_000f6c34()" identifier = (call_expression "FUN_000f6c34()" identifier (argument_list "()" ( )))) ;) (return_statement "return iVar16;" return identifier ;) })))
(translation_unit "int pragmaVtabFilter(sqlite3_vtab_cursor *pVtabCursor,int idxNum,char *idxStr,int argc,\n                    sqlite3_value **argv)\n\n{\n  sqlite3_vtab **ppsVar1;\n  undefined *puVar2;\n  int iVar3;\n  char *pcVar4;\n  sqlite3_vtab *psVar5;\n  char *pcVar6;\n  char *zSql;\n  undefined4 uVar7;\n  sqlite3_vtab_cursor *ppStmt;\n  undefined4 *puVar8;\n  sqlite3 *psVar9;\n  int *zSql_00;\n  int iVar10;\n  sqlite3_vtab_cursor *psVar11;\n  int iVar12;\n  int *piVar13;\n  int *piVar14;\n  sqlite3_vtab *psVar15;\n  int *piVar16;\n  undefined *unaff_s6;\n  int iVar17;\n  undefined *puVar18;\n  code *pcVar19;\n  sqlite3_vtab_cursor *ppStmt_00;\n  sqlite3_vtab_cursor *psVar20;\n  code *pcVar21;\n  code *pcVar22;\n  sqlite3_stmt **in_stack_fffffeb8;\n  char **ppcStack_144;\n  int iStack_11c;\n  int *piStack_118;\n  int iStack_114;\n  undefined4 uStack_110;\n  sqlite3 *psStack_10c;\n  int *piStack_108;\n  int *piStack_104;\n  undefined4 *puStack_100;\n  char *pcStack_fc;\n  undefined *puStack_f8;\n  int iStack_f4;\n  undefined *puStack_f0;\n  int in_stack_ffffff30;\n  int iStack_cc;\n  sqlite3_vtab_cursor sStack_b8;\n  sqlite3 *psStack_b4;\n  int iStack_b0;\n  int iStack_ac;\n  int *piStack_a8;\n  code *pcStack_a4;\n  int iStack_98;\n  sqlite3_vtab_cursor *psStack_94;\n  sqlite3_vtab_cursor sStack_80;\n  undefined4 *puStack_7c;\n  int iStack_74;\n  sqlite3_value **ppsStack_70;\n  sqlite3_vtab_cursor *psStack_6c;\n  sqlite3_vtab *psStack_68;\n  code *pcStack_64;\n  StrAccum acc;\n  \n  puVar2 = PTR___stack_chk_guard_0015ba2c;\n  psVar15 = pVtabCursor->pVtab;\n  iVar3 = *(int *)PTR___stack_chk_guard_0015ba2c;\n  ppStmt = (sqlite3_vtab_cursor *)argc;\n  (*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();\n  iVar12 = -((int)((*(byte *)(psVar15[1].nRef + 5) ^ 0x20) << 0x1a) >> 0x1f);\n  if (0 < argc) {\n    argc = argc + iVar12;\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_value_text_0015b614)(*argv);\n      if (pcVar4 != (char *)0x0) {\n        psVar5 = (sqlite3_vtab *)(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        pVtabCursor[iVar12 + 4].pVtab = psVar5;\n        if (psVar5 == (sqlite3_vtab *)0x0) goto LAB_000f7410;\n      }\n      iVar12 = iVar12 + 1;\n      argv = argv + 1;\n    } while (iVar12 != argc);\n  }\n  acc.accError = '\0';\n  acc.printfFlags = '\0';\n  acc.zText = (char *)0x0;\n  acc.db = (sqlite3 *)0x0;\n  acc.nAlloc = 0;\n  acc.nChar = 0;\n  acc.mxAlloc = (u32)psVar15[1].pModule[1].xDisconnect;\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&acc,PTR_DAT_0015b5fc + -0x5360);\n  if (pVtabCursor[5].pVtab != (sqlite3_vtab *)0x0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc,PTR_DAT_0015b5fc + -0x5358);\n  }\n  pcVar4 = *(char **)psVar15[1].nRef;\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&acc);\n  if (pVtabCursor[4].pVtab != (sqlite3_vtab *)0x0) {\n    pcVar4 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc);\n  }\n  pcVar6 = (char *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&acc);\n  if (pcVar6 == (char *)0x0) {\nLAB_000f7410:\n    iVar12 = 7;\n  }\n  else {\n    ppStmt = pVtabCursor + 1;\n    pcVar4 = pcVar6;\n    iVar12 = sqlite3_prepare_v2((sqlite3 *)psVar15[1].pModule,pcVar6,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0);\n    (*(code *)PTR_sqlite3_free_0015b620)(pcVar6);\n    if (iVar12 == 0) {\n      iVar12 = pragmaVtabNext(pVtabCursor);\n    }\n    else {\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule);\n      pcVar6 = (char *)(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      psVar15->zErrMsg = pcVar6;\n    }\n  }\n  if (iVar3 == *(int *)puVar2) {\n    return iVar12;\n  }\n  pcVar21 = rtreeConstraintError;\n  puVar18 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  piVar14 = *(int **)(puVar18 + 0x645d8);\n  iVar10 = *(int *)(iVar3 + 0x24);\n  pcVar6 = *(char **)(iVar3 + 0x20);\n  puStack_7c = (undefined4 *)*piVar14;\n  sStack_80.pVtab = (sqlite3_vtab *)0x0;\n  iStack_74 = iVar12;\n  ppsStack_70 = argv;\n  psStack_6c = pVtabCursor;\n  psStack_68 = psVar15;\n  pcStack_64 = pcVar21;\n  zSql = (char *)(**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5354,pcVar6);\n  if (zSql == (char *)0x0) {\n    iVar12 = 7;\n    (**(code **)(puVar18 + 0x641cc))(0);\nLAB_000f7558:\n    (**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);\n  }\n  else {\n    ppStmt = &sStack_80;\n    iVar10 = -1;\n    pcVar6 = zSql;\n    iVar12 = sqlite3_prepare_v2(*(sqlite3 **)(iVar3 + 0xc),zSql,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0);\n    (**(code **)(puVar18 + 0x641cc))(zSql);\n    if (iVar12 != 0) goto LAB_000f7558;\n    if (pcVar4 == (char *)0x0) {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,0);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5340,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }\n    else {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4);\n      ppStmt = (sqlite3_vtab_cursor *)(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4 + 1);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5320,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }\n    iVar12 = 0x13;\n    (**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);\n  }\n  if (puStack_7c == (undefined4 *)*piVar14) {\n    return iVar12;\n  }\n  pcVar21 = *(code **)(puVar18 + 0x645bc);\n  pcVar22 = rtreeCheckPrepare;\n  puVar8 = puStack_7c;\n  (*pcVar21)();\n  ppStmt_00 = (sqlite3_vtab_cursor *)(pcVar21 + 0x6bfc4);\n  zSql_00 = &iStack_98;\n  piVar13 = *(int **)(pcVar21 + 0x64440);\n  sStack_b8.pVtab = (sqlite3_vtab *)0x0;\n  psStack_b4 = (sqlite3 *)*piVar13;\n  iStack_b0 = iVar3;\n  iStack_ac = iVar12;\n  piStack_a8 = piVar14;\n  pcStack_a4 = pcVar22;\n  iStack_98 = iVar10;\n  psStack_94 = ppStmt;\n  piVar14 = (int *)(**(code **)(pcVar21 + 0x6402c))(pcVar6);\n  if (puVar8[10] == 0) {\n    if (piVar14 == (int *)0x0) {\n      puVar8[10] = 7;\n    }\n    else {\n      ppStmt = &sStack_b8;\n      iVar10 = -1;\n      in_stack_ffffff30 = 0;\n      zSql_00 = piVar14;\n      iVar12 = sqlite3_prepare_v2((sqlite3 *)*puVar8,(char *)piVar14,-1,(sqlite3_stmt **)ppStmt,\n                                  (char **)0x0);\n      puVar8[10] = iVar12;\n    }\n  }\n  (**(code **)(pcVar21 + 0x64034))(piVar14);\n  if (psStack_b4 == (sqlite3 *)*piVar13) {\n    return (int)sStack_b8.pVtab;\n  }\n  pcVar21 = *(code **)(pcVar21 + 0x64424);\n  psVar9 = psStack_b4;\n  (*pcVar21)();\n  puStack_f8 = puVar2;\n  piVar16 = *(int **)(pcVar21 + 0x6435c);\n  iStack_11c = 0;\n  psStack_10c = (sqlite3 *)*piVar16;\n  iVar12 = iVar10;\n  psVar11 = ppStmt;\n  piStack_108 = piVar13;\n  piStack_104 = piVar14;\n  puStack_100 = puVar8;\n  pcStack_fc = pcVar4;\n  iStack_f4 = argc;\n  puStack_f0 = unaff_s6;\n  iVar3 = (**(code **)(pcVar21 + 0x63f68))(*(int *)(pcVar21 + 0x63f2c) + -0x65b0,iVar10);\n  if (iVar3 == 0) {\n    piVar14 = (int *)(**(code **)(pcVar21 + 0x63f58))(*(int *)(pcVar21 + 0x63f2c) + -0x52f8);\n    if (piVar14 == (int *)0x0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    iVar12 = -1;\n  }\n  else {\n    piStack_118 = (int *)0x0;\n    pcVar22 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1bd4);\n    iStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar19 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1cd4);\n    (*pcVar19)(&piStack_118,zSql_00,&iStack_11c);\n    (*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar19)(&piStack_118,iVar10,&iStack_11c);\n    zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x5cfc);\n    (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n    piVar14 = piStack_118;\n    iVar12 = iStack_114;\n    if (0 < (int)ppStmt) {\n      iVar3 = *(int *)(pcVar21 + 0x6404c);\n      psVar20 = (sqlite3_vtab_cursor *)0x0;\n      iVar10 = *(int *)(pcVar21 + 0x63f18);\n      iVar17 = *(int *)(pcVar21 + 0x63f2c);\n      zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x53f4);\n      do {\n        while (ppsVar1 = &psVar20->pVtab,\n              psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),\n              *(char *)((int)ppsVar1 + iStack_cc) != '\0') {\n          (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n          (*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c);\n          (*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c);\n          (*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c);\n          zSql_00 = (int *)(iVar10 + 0x5c88);\n          piVar14 = piStack_118;\n          iVar12 = iStack_114;\n          if (ppStmt == psVar20) goto joined_r0x000f7930;\n        }\n        piVar14 = piStack_118;\n        iVar12 = iStack_114;\n      } while (ppStmt != psVar20);\n    }\n  }\njoined_r0x000f7930:\n  if (iStack_11c == 0) {\n    in_stack_fffffeb8 = (sqlite3_stmt **)0x0;\n    zSql_00 = piVar14;\n    iStack_11c = sqlite3_prepare_v2(psVar9,(char *)piVar14,iVar12,(sqlite3_stmt **)ppStmt_00,\n                                    (char **)0x0);\n    psVar11 = ppStmt_00;\n  }\nLAB_000f778c:\n  (**(code **)(pcVar21 + 0x63f50))(piVar14);\n  if (psStack_10c == (sqlite3 *)*piVar16) {\n    return iStack_11c;\n  }\n  psVar9 = psStack_10c;\n  (**(code **)(pcVar21 + 0x64340))();\n  iVar12 = sqlite3LockAndPrepare\n                     (psVar9,(char *)zSql_00,iVar12,(uint)psVar11 & 0xf | 0x80,(Vdbe *)0x0,\n                      in_stack_fffffeb8,ppcStack_144);\n  return iVar12;\n}\n\n" (function_definition "int pragmaVtabFilter(sqlite3_vtab_cursor *pVtabCursor,int idxNum,char *idxStr,int argc,\n                    sqlite3_value **argv)\n\n{\n  sqlite3_vtab **ppsVar1;\n  undefined *puVar2;\n  int iVar3;\n  char *pcVar4;\n  sqlite3_vtab *psVar5;\n  char *pcVar6;\n  char *zSql;\n  undefined4 uVar7;\n  sqlite3_vtab_cursor *ppStmt;\n  undefined4 *puVar8;\n  sqlite3 *psVar9;\n  int *zSql_00;\n  int iVar10;\n  sqlite3_vtab_cursor *psVar11;\n  int iVar12;\n  int *piVar13;\n  int *piVar14;\n  sqlite3_vtab *psVar15;\n  int *piVar16;\n  undefined *unaff_s6;\n  int iVar17;\n  undefined *puVar18;\n  code *pcVar19;\n  sqlite3_vtab_cursor *ppStmt_00;\n  sqlite3_vtab_cursor *psVar20;\n  code *pcVar21;\n  code *pcVar22;\n  sqlite3_stmt **in_stack_fffffeb8;\n  char **ppcStack_144;\n  int iStack_11c;\n  int *piStack_118;\n  int iStack_114;\n  undefined4 uStack_110;\n  sqlite3 *psStack_10c;\n  int *piStack_108;\n  int *piStack_104;\n  undefined4 *puStack_100;\n  char *pcStack_fc;\n  undefined *puStack_f8;\n  int iStack_f4;\n  undefined *puStack_f0;\n  int in_stack_ffffff30;\n  int iStack_cc;\n  sqlite3_vtab_cursor sStack_b8;\n  sqlite3 *psStack_b4;\n  int iStack_b0;\n  int iStack_ac;\n  int *piStack_a8;\n  code *pcStack_a4;\n  int iStack_98;\n  sqlite3_vtab_cursor *psStack_94;\n  sqlite3_vtab_cursor sStack_80;\n  undefined4 *puStack_7c;\n  int iStack_74;\n  sqlite3_value **ppsStack_70;\n  sqlite3_vtab_cursor *psStack_6c;\n  sqlite3_vtab *psStack_68;\n  code *pcStack_64;\n  StrAccum acc;\n  \n  puVar2 = PTR___stack_chk_guard_0015ba2c;\n  psVar15 = pVtabCursor->pVtab;\n  iVar3 = *(int *)PTR___stack_chk_guard_0015ba2c;\n  ppStmt = (sqlite3_vtab_cursor *)argc;\n  (*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();\n  iVar12 = -((int)((*(byte *)(psVar15[1].nRef + 5) ^ 0x20) << 0x1a) >> 0x1f);\n  if (0 < argc) {\n    argc = argc + iVar12;\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_value_text_0015b614)(*argv);\n      if (pcVar4 != (char *)0x0) {\n        psVar5 = (sqlite3_vtab *)(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        pVtabCursor[iVar12 + 4].pVtab = psVar5;\n        if (psVar5 == (sqlite3_vtab *)0x0) goto LAB_000f7410;\n      }\n      iVar12 = iVar12 + 1;\n      argv = argv + 1;\n    } while (iVar12 != argc);\n  }\n  acc.accError = '\0';\n  acc.printfFlags = '\0';\n  acc.zText = (char *)0x0;\n  acc.db = (sqlite3 *)0x0;\n  acc.nAlloc = 0;\n  acc.nChar = 0;\n  acc.mxAlloc = (u32)psVar15[1].pModule[1].xDisconnect;\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&acc,PTR_DAT_0015b5fc + -0x5360);\n  if (pVtabCursor[5].pVtab != (sqlite3_vtab *)0x0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc,PTR_DAT_0015b5fc + -0x5358);\n  }\n  pcVar4 = *(char **)psVar15[1].nRef;\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&acc);\n  if (pVtabCursor[4].pVtab != (sqlite3_vtab *)0x0) {\n    pcVar4 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc);\n  }\n  pcVar6 = (char *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&acc);\n  if (pcVar6 == (char *)0x0) {\nLAB_000f7410:\n    iVar12 = 7;\n  }\n  else {\n    ppStmt = pVtabCursor + 1;\n    pcVar4 = pcVar6;\n    iVar12 = sqlite3_prepare_v2((sqlite3 *)psVar15[1].pModule,pcVar6,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0);\n    (*(code *)PTR_sqlite3_free_0015b620)(pcVar6);\n    if (iVar12 == 0) {\n      iVar12 = pragmaVtabNext(pVtabCursor);\n    }\n    else {\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule);\n      pcVar6 = (char *)(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      psVar15->zErrMsg = pcVar6;\n    }\n  }\n  if (iVar3 == *(int *)puVar2) {\n    return iVar12;\n  }\n  pcVar21 = rtreeConstraintError;\n  puVar18 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  piVar14 = *(int **)(puVar18 + 0x645d8);\n  iVar10 = *(int *)(iVar3 + 0x24);\n  pcVar6 = *(char **)(iVar3 + 0x20);\n  puStack_7c = (undefined4 *)*piVar14;\n  sStack_80.pVtab = (sqlite3_vtab *)0x0;\n  iStack_74 = iVar12;\n  ppsStack_70 = argv;\n  psStack_6c = pVtabCursor;\n  psStack_68 = psVar15;\n  pcStack_64 = pcVar21;\n  zSql = (char *)(**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5354,pcVar6);\n  if (zSql == (char *)0x0) {\n    iVar12 = 7;\n    (**(code **)(puVar18 + 0x641cc))(0);\nLAB_000f7558:\n    (**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);\n  }\n  else {\n    ppStmt = &sStack_80;\n    iVar10 = -1;\n    pcVar6 = zSql;\n    iVar12 = sqlite3_prepare_v2(*(sqlite3 **)(iVar3 + 0xc),zSql,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0);\n    (**(code **)(puVar18 + 0x641cc))(zSql);\n    if (iVar12 != 0) goto LAB_000f7558;\n    if (pcVar4 == (char *)0x0) {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,0);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5340,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }\n    else {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4);\n      ppStmt = (sqlite3_vtab_cursor *)(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4 + 1);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5320,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }\n    iVar12 = 0x13;\n    (**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);\n  }\n  if (puStack_7c == (undefined4 *)*piVar14) {\n    return iVar12;\n  }\n  pcVar21 = *(code **)(puVar18 + 0x645bc);\n  pcVar22 = rtreeCheckPrepare;\n  puVar8 = puStack_7c;\n  (*pcVar21)();\n  ppStmt_00 = (sqlite3_vtab_cursor *)(pcVar21 + 0x6bfc4);\n  zSql_00 = &iStack_98;\n  piVar13 = *(int **)(pcVar21 + 0x64440);\n  sStack_b8.pVtab = (sqlite3_vtab *)0x0;\n  psStack_b4 = (sqlite3 *)*piVar13;\n  iStack_b0 = iVar3;\n  iStack_ac = iVar12;\n  piStack_a8 = piVar14;\n  pcStack_a4 = pcVar22;\n  iStack_98 = iVar10;\n  psStack_94 = ppStmt;\n  piVar14 = (int *)(**(code **)(pcVar21 + 0x6402c))(pcVar6);\n  if (puVar8[10] == 0) {\n    if (piVar14 == (int *)0x0) {\n      puVar8[10] = 7;\n    }\n    else {\n      ppStmt = &sStack_b8;\n      iVar10 = -1;\n      in_stack_ffffff30 = 0;\n      zSql_00 = piVar14;\n      iVar12 = sqlite3_prepare_v2((sqlite3 *)*puVar8,(char *)piVar14,-1,(sqlite3_stmt **)ppStmt,\n                                  (char **)0x0);\n      puVar8[10] = iVar12;\n    }\n  }\n  (**(code **)(pcVar21 + 0x64034))(piVar14);\n  if (psStack_b4 == (sqlite3 *)*piVar13) {\n    return (int)sStack_b8.pVtab;\n  }\n  pcVar21 = *(code **)(pcVar21 + 0x64424);\n  psVar9 = psStack_b4;\n  (*pcVar21)();\n  puStack_f8 = puVar2;\n  piVar16 = *(int **)(pcVar21 + 0x6435c);\n  iStack_11c = 0;\n  psStack_10c = (sqlite3 *)*piVar16;\n  iVar12 = iVar10;\n  psVar11 = ppStmt;\n  piStack_108 = piVar13;\n  piStack_104 = piVar14;\n  puStack_100 = puVar8;\n  pcStack_fc = pcVar4;\n  iStack_f4 = argc;\n  puStack_f0 = unaff_s6;\n  iVar3 = (**(code **)(pcVar21 + 0x63f68))(*(int *)(pcVar21 + 0x63f2c) + -0x65b0,iVar10);\n  if (iVar3 == 0) {\n    piVar14 = (int *)(**(code **)(pcVar21 + 0x63f58))(*(int *)(pcVar21 + 0x63f2c) + -0x52f8);\n    if (piVar14 == (int *)0x0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    iVar12 = -1;\n  }\n  else {\n    piStack_118 = (int *)0x0;\n    pcVar22 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1bd4);\n    iStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar19 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1cd4);\n    (*pcVar19)(&piStack_118,zSql_00,&iStack_11c);\n    (*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar19)(&piStack_118,iVar10,&iStack_11c);\n    zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x5cfc);\n    (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n    piVar14 = piStack_118;\n    iVar12 = iStack_114;\n    if (0 < (int)ppStmt) {\n      iVar3 = *(int *)(pcVar21 + 0x6404c);\n      psVar20 = (sqlite3_vtab_cursor *)0x0;\n      iVar10 = *(int *)(pcVar21 + 0x63f18);\n      iVar17 = *(int *)(pcVar21 + 0x63f2c);\n      zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x53f4);\n      do {\n        while (ppsVar1 = &psVar20->pVtab,\n              psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),\n              *(char *)((int)ppsVar1 + iStack_cc) != '\0') {\n          (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n          (*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c);\n          (*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c);\n          (*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c);\n          zSql_00 = (int *)(iVar10 + 0x5c88);\n          piVar14 = piStack_118;\n          iVar12 = iStack_114;\n          if (ppStmt == psVar20) goto joined_r0x000f7930;\n        }\n        piVar14 = piStack_118;\n        iVar12 = iStack_114;\n      } while (ppStmt != psVar20);\n    }\n  }\njoined_r0x000f7930:\n  if (iStack_11c == 0) {\n    in_stack_fffffeb8 = (sqlite3_stmt **)0x0;\n    zSql_00 = piVar14;\n    iStack_11c = sqlite3_prepare_v2(psVar9,(char *)piVar14,iVar12,(sqlite3_stmt **)ppStmt_00,\n                                    (char **)0x0);\n    psVar11 = ppStmt_00;\n  }\nLAB_000f778c:\n  (**(code **)(pcVar21 + 0x63f50))(piVar14);\n  if (psStack_10c == (sqlite3 *)*piVar16) {\n    return iStack_11c;\n  }\n  psVar9 = psStack_10c;\n  (**(code **)(pcVar21 + 0x64340))();\n  iVar12 = sqlite3LockAndPrepare\n                     (psVar9,(char *)zSql_00,iVar12,(uint)psVar11 & 0xf | 0x80,(Vdbe *)0x0,\n                      in_stack_fffffeb8,ppcStack_144);\n  return iVar12;\n}" primitive_type (function_declarator "pragmaVtabFilter(sqlite3_vtab_cursor *pVtabCursor,int idxNum,char *idxStr,int argc,\n                    sqlite3_value **argv)" identifier (parameter_list "(sqlite3_vtab_cursor *pVtabCursor,int idxNum,char *idxStr,int argc,\n                    sqlite3_value **argv)" ( (parameter_declaration "sqlite3_vtab_cursor *pVtabCursor" type_identifier (pointer_declarator "*pVtabCursor" * identifier)) , (parameter_declaration "int idxNum" primitive_type identifier) , (parameter_declaration "char *idxStr" primitive_type (pointer_declarator "*idxStr" * identifier)) , (parameter_declaration "int argc" primitive_type identifier) , (parameter_declaration "sqlite3_value **argv" type_identifier (pointer_declarator "**argv" * (pointer_declarator "*argv" * identifier))) ))) (compound_statement "{\n  sqlite3_vtab **ppsVar1;\n  undefined *puVar2;\n  int iVar3;\n  char *pcVar4;\n  sqlite3_vtab *psVar5;\n  char *pcVar6;\n  char *zSql;\n  undefined4 uVar7;\n  sqlite3_vtab_cursor *ppStmt;\n  undefined4 *puVar8;\n  sqlite3 *psVar9;\n  int *zSql_00;\n  int iVar10;\n  sqlite3_vtab_cursor *psVar11;\n  int iVar12;\n  int *piVar13;\n  int *piVar14;\n  sqlite3_vtab *psVar15;\n  int *piVar16;\n  undefined *unaff_s6;\n  int iVar17;\n  undefined *puVar18;\n  code *pcVar19;\n  sqlite3_vtab_cursor *ppStmt_00;\n  sqlite3_vtab_cursor *psVar20;\n  code *pcVar21;\n  code *pcVar22;\n  sqlite3_stmt **in_stack_fffffeb8;\n  char **ppcStack_144;\n  int iStack_11c;\n  int *piStack_118;\n  int iStack_114;\n  undefined4 uStack_110;\n  sqlite3 *psStack_10c;\n  int *piStack_108;\n  int *piStack_104;\n  undefined4 *puStack_100;\n  char *pcStack_fc;\n  undefined *puStack_f8;\n  int iStack_f4;\n  undefined *puStack_f0;\n  int in_stack_ffffff30;\n  int iStack_cc;\n  sqlite3_vtab_cursor sStack_b8;\n  sqlite3 *psStack_b4;\n  int iStack_b0;\n  int iStack_ac;\n  int *piStack_a8;\n  code *pcStack_a4;\n  int iStack_98;\n  sqlite3_vtab_cursor *psStack_94;\n  sqlite3_vtab_cursor sStack_80;\n  undefined4 *puStack_7c;\n  int iStack_74;\n  sqlite3_value **ppsStack_70;\n  sqlite3_vtab_cursor *psStack_6c;\n  sqlite3_vtab *psStack_68;\n  code *pcStack_64;\n  StrAccum acc;\n  \n  puVar2 = PTR___stack_chk_guard_0015ba2c;\n  psVar15 = pVtabCursor->pVtab;\n  iVar3 = *(int *)PTR___stack_chk_guard_0015ba2c;\n  ppStmt = (sqlite3_vtab_cursor *)argc;\n  (*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();\n  iVar12 = -((int)((*(byte *)(psVar15[1].nRef + 5) ^ 0x20) << 0x1a) >> 0x1f);\n  if (0 < argc) {\n    argc = argc + iVar12;\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_value_text_0015b614)(*argv);\n      if (pcVar4 != (char *)0x0) {\n        psVar5 = (sqlite3_vtab *)(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        pVtabCursor[iVar12 + 4].pVtab = psVar5;\n        if (psVar5 == (sqlite3_vtab *)0x0) goto LAB_000f7410;\n      }\n      iVar12 = iVar12 + 1;\n      argv = argv + 1;\n    } while (iVar12 != argc);\n  }\n  acc.accError = '\0';\n  acc.printfFlags = '\0';\n  acc.zText = (char *)0x0;\n  acc.db = (sqlite3 *)0x0;\n  acc.nAlloc = 0;\n  acc.nChar = 0;\n  acc.mxAlloc = (u32)psVar15[1].pModule[1].xDisconnect;\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&acc,PTR_DAT_0015b5fc + -0x5360);\n  if (pVtabCursor[5].pVtab != (sqlite3_vtab *)0x0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc,PTR_DAT_0015b5fc + -0x5358);\n  }\n  pcVar4 = *(char **)psVar15[1].nRef;\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&acc);\n  if (pVtabCursor[4].pVtab != (sqlite3_vtab *)0x0) {\n    pcVar4 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc);\n  }\n  pcVar6 = (char *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&acc);\n  if (pcVar6 == (char *)0x0) {\nLAB_000f7410:\n    iVar12 = 7;\n  }\n  else {\n    ppStmt = pVtabCursor + 1;\n    pcVar4 = pcVar6;\n    iVar12 = sqlite3_prepare_v2((sqlite3 *)psVar15[1].pModule,pcVar6,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0);\n    (*(code *)PTR_sqlite3_free_0015b620)(pcVar6);\n    if (iVar12 == 0) {\n      iVar12 = pragmaVtabNext(pVtabCursor);\n    }\n    else {\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule);\n      pcVar6 = (char *)(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      psVar15->zErrMsg = pcVar6;\n    }\n  }\n  if (iVar3 == *(int *)puVar2) {\n    return iVar12;\n  }\n  pcVar21 = rtreeConstraintError;\n  puVar18 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  piVar14 = *(int **)(puVar18 + 0x645d8);\n  iVar10 = *(int *)(iVar3 + 0x24);\n  pcVar6 = *(char **)(iVar3 + 0x20);\n  puStack_7c = (undefined4 *)*piVar14;\n  sStack_80.pVtab = (sqlite3_vtab *)0x0;\n  iStack_74 = iVar12;\n  ppsStack_70 = argv;\n  psStack_6c = pVtabCursor;\n  psStack_68 = psVar15;\n  pcStack_64 = pcVar21;\n  zSql = (char *)(**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5354,pcVar6);\n  if (zSql == (char *)0x0) {\n    iVar12 = 7;\n    (**(code **)(puVar18 + 0x641cc))(0);\nLAB_000f7558:\n    (**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);\n  }\n  else {\n    ppStmt = &sStack_80;\n    iVar10 = -1;\n    pcVar6 = zSql;\n    iVar12 = sqlite3_prepare_v2(*(sqlite3 **)(iVar3 + 0xc),zSql,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0);\n    (**(code **)(puVar18 + 0x641cc))(zSql);\n    if (iVar12 != 0) goto LAB_000f7558;\n    if (pcVar4 == (char *)0x0) {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,0);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5340,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }\n    else {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4);\n      ppStmt = (sqlite3_vtab_cursor *)(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4 + 1);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5320,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }\n    iVar12 = 0x13;\n    (**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);\n  }\n  if (puStack_7c == (undefined4 *)*piVar14) {\n    return iVar12;\n  }\n  pcVar21 = *(code **)(puVar18 + 0x645bc);\n  pcVar22 = rtreeCheckPrepare;\n  puVar8 = puStack_7c;\n  (*pcVar21)();\n  ppStmt_00 = (sqlite3_vtab_cursor *)(pcVar21 + 0x6bfc4);\n  zSql_00 = &iStack_98;\n  piVar13 = *(int **)(pcVar21 + 0x64440);\n  sStack_b8.pVtab = (sqlite3_vtab *)0x0;\n  psStack_b4 = (sqlite3 *)*piVar13;\n  iStack_b0 = iVar3;\n  iStack_ac = iVar12;\n  piStack_a8 = piVar14;\n  pcStack_a4 = pcVar22;\n  iStack_98 = iVar10;\n  psStack_94 = ppStmt;\n  piVar14 = (int *)(**(code **)(pcVar21 + 0x6402c))(pcVar6);\n  if (puVar8[10] == 0) {\n    if (piVar14 == (int *)0x0) {\n      puVar8[10] = 7;\n    }\n    else {\n      ppStmt = &sStack_b8;\n      iVar10 = -1;\n      in_stack_ffffff30 = 0;\n      zSql_00 = piVar14;\n      iVar12 = sqlite3_prepare_v2((sqlite3 *)*puVar8,(char *)piVar14,-1,(sqlite3_stmt **)ppStmt,\n                                  (char **)0x0);\n      puVar8[10] = iVar12;\n    }\n  }\n  (**(code **)(pcVar21 + 0x64034))(piVar14);\n  if (psStack_b4 == (sqlite3 *)*piVar13) {\n    return (int)sStack_b8.pVtab;\n  }\n  pcVar21 = *(code **)(pcVar21 + 0x64424);\n  psVar9 = psStack_b4;\n  (*pcVar21)();\n  puStack_f8 = puVar2;\n  piVar16 = *(int **)(pcVar21 + 0x6435c);\n  iStack_11c = 0;\n  psStack_10c = (sqlite3 *)*piVar16;\n  iVar12 = iVar10;\n  psVar11 = ppStmt;\n  piStack_108 = piVar13;\n  piStack_104 = piVar14;\n  puStack_100 = puVar8;\n  pcStack_fc = pcVar4;\n  iStack_f4 = argc;\n  puStack_f0 = unaff_s6;\n  iVar3 = (**(code **)(pcVar21 + 0x63f68))(*(int *)(pcVar21 + 0x63f2c) + -0x65b0,iVar10);\n  if (iVar3 == 0) {\n    piVar14 = (int *)(**(code **)(pcVar21 + 0x63f58))(*(int *)(pcVar21 + 0x63f2c) + -0x52f8);\n    if (piVar14 == (int *)0x0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    iVar12 = -1;\n  }\n  else {\n    piStack_118 = (int *)0x0;\n    pcVar22 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1bd4);\n    iStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar19 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1cd4);\n    (*pcVar19)(&piStack_118,zSql_00,&iStack_11c);\n    (*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar19)(&piStack_118,iVar10,&iStack_11c);\n    zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x5cfc);\n    (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n    piVar14 = piStack_118;\n    iVar12 = iStack_114;\n    if (0 < (int)ppStmt) {\n      iVar3 = *(int *)(pcVar21 + 0x6404c);\n      psVar20 = (sqlite3_vtab_cursor *)0x0;\n      iVar10 = *(int *)(pcVar21 + 0x63f18);\n      iVar17 = *(int *)(pcVar21 + 0x63f2c);\n      zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x53f4);\n      do {\n        while (ppsVar1 = &psVar20->pVtab,\n              psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),\n              *(char *)((int)ppsVar1 + iStack_cc) != '\0') {\n          (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n          (*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c);\n          (*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c);\n          (*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c);\n          zSql_00 = (int *)(iVar10 + 0x5c88);\n          piVar14 = piStack_118;\n          iVar12 = iStack_114;\n          if (ppStmt == psVar20) goto joined_r0x000f7930;\n        }\n        piVar14 = piStack_118;\n        iVar12 = iStack_114;\n      } while (ppStmt != psVar20);\n    }\n  }\njoined_r0x000f7930:\n  if (iStack_11c == 0) {\n    in_stack_fffffeb8 = (sqlite3_stmt **)0x0;\n    zSql_00 = piVar14;\n    iStack_11c = sqlite3_prepare_v2(psVar9,(char *)piVar14,iVar12,(sqlite3_stmt **)ppStmt_00,\n                                    (char **)0x0);\n    psVar11 = ppStmt_00;\n  }\nLAB_000f778c:\n  (**(code **)(pcVar21 + 0x63f50))(piVar14);\n  if (psStack_10c == (sqlite3 *)*piVar16) {\n    return iStack_11c;\n  }\n  psVar9 = psStack_10c;\n  (**(code **)(pcVar21 + 0x64340))();\n  iVar12 = sqlite3LockAndPrepare\n                     (psVar9,(char *)zSql_00,iVar12,(uint)psVar11 & 0xf | 0x80,(Vdbe *)0x0,\n                      in_stack_fffffeb8,ppcStack_144);\n  return iVar12;\n}" { (declaration "sqlite3_vtab **ppsVar1;" type_identifier (pointer_declarator "**ppsVar1" * (pointer_declarator "*ppsVar1" * identifier)) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "char *pcVar4;" primitive_type (pointer_declarator "*pcVar4" * identifier) ;) (declaration "sqlite3_vtab *psVar5;" type_identifier (pointer_declarator "*psVar5" * identifier) ;) (declaration "char *pcVar6;" primitive_type (pointer_declarator "*pcVar6" * identifier) ;) (declaration "char *zSql;" primitive_type (pointer_declarator "*zSql" * identifier) ;) (declaration "undefined4 uVar7;" type_identifier identifier ;) (declaration "sqlite3_vtab_cursor *ppStmt;" type_identifier (pointer_declarator "*ppStmt" * identifier) ;) (declaration "undefined4 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "sqlite3 *psVar9;" type_identifier (pointer_declarator "*psVar9" * identifier) ;) (declaration "int *zSql_00;" primitive_type (pointer_declarator "*zSql_00" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "sqlite3_vtab_cursor *psVar11;" type_identifier (pointer_declarator "*psVar11" * identifier) ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "int *piVar13;" primitive_type (pointer_declarator "*piVar13" * identifier) ;) (declaration "int *piVar14;" primitive_type (pointer_declarator "*piVar14" * identifier) ;) (declaration "sqlite3_vtab *psVar15;" type_identifier (pointer_declarator "*psVar15" * identifier) ;) (declaration "int *piVar16;" primitive_type (pointer_declarator "*piVar16" * identifier) ;) (declaration "undefined *unaff_s6;" type_identifier (pointer_declarator "*unaff_s6" * identifier) ;) (declaration "int iVar17;" primitive_type identifier ;) (declaration "undefined *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "code *pcVar19;" type_identifier (pointer_declarator "*pcVar19" * identifier) ;) (declaration "sqlite3_vtab_cursor *ppStmt_00;" type_identifier (pointer_declarator "*ppStmt_00" * identifier) ;) (declaration "sqlite3_vtab_cursor *psVar20;" type_identifier (pointer_declarator "*psVar20" * identifier) ;) (declaration "code *pcVar21;" type_identifier (pointer_declarator "*pcVar21" * identifier) ;) (declaration "code *pcVar22;" type_identifier (pointer_declarator "*pcVar22" * identifier) ;) (declaration "sqlite3_stmt **in_stack_fffffeb8;" type_identifier (pointer_declarator "**in_stack_fffffeb8" * (pointer_declarator "*in_stack_fffffeb8" * identifier)) ;) (declaration "char **ppcStack_144;" primitive_type (pointer_declarator "**ppcStack_144" * (pointer_declarator "*ppcStack_144" * identifier)) ;) (declaration "int iStack_11c;" primitive_type identifier ;) (declaration "int *piStack_118;" primitive_type (pointer_declarator "*piStack_118" * identifier) ;) (declaration "int iStack_114;" primitive_type identifier ;) (declaration "undefined4 uStack_110;" type_identifier identifier ;) (declaration "sqlite3 *psStack_10c;" type_identifier (pointer_declarator "*psStack_10c" * identifier) ;) (declaration "int *piStack_108;" primitive_type (pointer_declarator "*piStack_108" * identifier) ;) (declaration "int *piStack_104;" primitive_type (pointer_declarator "*piStack_104" * identifier) ;) (declaration "undefined4 *puStack_100;" type_identifier (pointer_declarator "*puStack_100" * identifier) ;) (declaration "char *pcStack_fc;" primitive_type (pointer_declarator "*pcStack_fc" * identifier) ;) (declaration "undefined *puStack_f8;" type_identifier (pointer_declarator "*puStack_f8" * identifier) ;) (declaration "int iStack_f4;" primitive_type identifier ;) (declaration "undefined *puStack_f0;" type_identifier (pointer_declarator "*puStack_f0" * identifier) ;) (declaration "int in_stack_ffffff30;" primitive_type identifier ;) (declaration "int iStack_cc;" primitive_type identifier ;) (declaration "sqlite3_vtab_cursor sStack_b8;" type_identifier identifier ;) (declaration "sqlite3 *psStack_b4;" type_identifier (pointer_declarator "*psStack_b4" * identifier) ;) (declaration "int iStack_b0;" primitive_type identifier ;) (declaration "int iStack_ac;" primitive_type identifier ;) (declaration "int *piStack_a8;" primitive_type (pointer_declarator "*piStack_a8" * identifier) ;) (declaration "code *pcStack_a4;" type_identifier (pointer_declarator "*pcStack_a4" * identifier) ;) (declaration "int iStack_98;" primitive_type identifier ;) (declaration "sqlite3_vtab_cursor *psStack_94;" type_identifier (pointer_declarator "*psStack_94" * identifier) ;) (declaration "sqlite3_vtab_cursor sStack_80;" type_identifier identifier ;) (declaration "undefined4 *puStack_7c;" type_identifier (pointer_declarator "*puStack_7c" * identifier) ;) (declaration "int iStack_74;" primitive_type identifier ;) (declaration "sqlite3_value **ppsStack_70;" type_identifier (pointer_declarator "**ppsStack_70" * (pointer_declarator "*ppsStack_70" * identifier)) ;) (declaration "sqlite3_vtab_cursor *psStack_6c;" type_identifier (pointer_declarator "*psStack_6c" * identifier) ;) (declaration "sqlite3_vtab *psStack_68;" type_identifier (pointer_declarator "*psStack_68" * identifier) ;) (declaration "code *pcStack_64;" type_identifier (pointer_declarator "*pcStack_64" * identifier) ;) (declaration "StrAccum acc;" type_identifier identifier ;) (expression_statement "puVar2 = PTR___stack_chk_guard_0015ba2c;" (assignment_expression "puVar2 = PTR___stack_chk_guard_0015ba2c" identifier = identifier) ;) (expression_statement "psVar15 = pVtabCursor->pVtab;" (assignment_expression "psVar15 = pVtabCursor->pVtab" identifier = (field_expression "pVtabCursor->pVtab" identifier -> field_identifier)) ;) (expression_statement "iVar3 = *(int *)PTR___stack_chk_guard_0015ba2c;" (assignment_expression "iVar3 = *(int *)PTR___stack_chk_guard_0015ba2c" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0015ba2c" * (cast_expression "(int *)PTR___stack_chk_guard_0015ba2c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "ppStmt = (sqlite3_vtab_cursor *)argc;" (assignment_expression "ppStmt = (sqlite3_vtab_cursor *)argc" identifier = (cast_expression "(sqlite3_vtab_cursor *)argc" ( (type_descriptor "sqlite3_vtab_cursor *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "(*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();" (call_expression "(*(code *)(PTR_LAB_0015b6f8 + 0x1b68))()" (parenthesized_expression "(*(code *)(PTR_LAB_0015b6f8 + 0x1b68))" ( (pointer_expression "*(code *)(PTR_LAB_0015b6f8 + 0x1b68)" * (cast_expression "(code *)(PTR_LAB_0015b6f8 + 0x1b68)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0015b6f8 + 0x1b68)" ( (binary_expression "PTR_LAB_0015b6f8 + 0x1b68" identifier + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar12 = -((int)((*(byte *)(psVar15[1].nRef + 5) ^ 0x20) << 0x1a) >> 0x1f);" (assignment_expression "iVar12 = -((int)((*(byte *)(psVar15[1].nRef + 5) ^ 0x20) << 0x1a) >> 0x1f)" identifier = (unary_expression "-((int)((*(byte *)(psVar15[1].nRef + 5) ^ 0x20) << 0x1a) >> 0x1f)" - (parenthesized_expression "((int)((*(byte *)(psVar15[1].nRef + 5) ^ 0x20) << 0x1a) >> 0x1f)" ( (binary_expression "(int)((*(byte *)(psVar15[1].nRef + 5) ^ 0x20) << 0x1a) >> 0x1f" (cast_expression "(int)((*(byte *)(psVar15[1].nRef + 5) ^ 0x20) << 0x1a)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((*(byte *)(psVar15[1].nRef + 5) ^ 0x20) << 0x1a)" ( (binary_expression "(*(byte *)(psVar15[1].nRef + 5) ^ 0x20) << 0x1a" (parenthesized_expression "(*(byte *)(psVar15[1].nRef + 5) ^ 0x20)" ( (binary_expression "*(byte *)(psVar15[1].nRef + 5) ^ 0x20" (pointer_expression "*(byte *)(psVar15[1].nRef + 5)" * (cast_expression "(byte *)(psVar15[1].nRef + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(psVar15[1].nRef + 5)" ( (binary_expression "psVar15[1].nRef + 5" (field_expression "psVar15[1].nRef" (subscript_expression "psVar15[1]" identifier [ number_literal ]) . field_identifier) + number_literal) )))) ^ number_literal) )) << number_literal) ))) >> number_literal) )))) ;) (if_statement "if (0 < argc) {\n    argc = argc + iVar12;\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_value_text_0015b614)(*argv);\n      if (pcVar4 != (char *)0x0) {\n        psVar5 = (sqlite3_vtab *)(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        pVtabCursor[iVar12 + 4].pVtab = psVar5;\n        if (psVar5 == (sqlite3_vtab *)0x0) goto LAB_000f7410;\n      }\n      iVar12 = iVar12 + 1;\n      argv = argv + 1;\n    } while (iVar12 != argc);\n  }" if (parenthesized_expression "(0 < argc)" ( (binary_expression "0 < argc" number_literal < identifier) )) (compound_statement "{\n    argc = argc + iVar12;\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_value_text_0015b614)(*argv);\n      if (pcVar4 != (char *)0x0) {\n        psVar5 = (sqlite3_vtab *)(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        pVtabCursor[iVar12 + 4].pVtab = psVar5;\n        if (psVar5 == (sqlite3_vtab *)0x0) goto LAB_000f7410;\n      }\n      iVar12 = iVar12 + 1;\n      argv = argv + 1;\n    } while (iVar12 != argc);\n  }" { (expression_statement "argc = argc + iVar12;" (assignment_expression "argc = argc + iVar12" identifier = (binary_expression "argc + iVar12" identifier + identifier)) ;) (expression_statement "unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;" (assignment_expression "unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4" identifier = (binary_expression "PTR_LAB_0015b5e8 + 0x71f4" identifier + number_literal)) ;) (do_statement "do {\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_value_text_0015b614)(*argv);\n      if (pcVar4 != (char *)0x0) {\n        psVar5 = (sqlite3_vtab *)(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        pVtabCursor[iVar12 + 4].pVtab = psVar5;\n        if (psVar5 == (sqlite3_vtab *)0x0) goto LAB_000f7410;\n      }\n      iVar12 = iVar12 + 1;\n      argv = argv + 1;\n    } while (iVar12 != argc);" do (compound_statement "{\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_value_text_0015b614)(*argv);\n      if (pcVar4 != (char *)0x0) {\n        psVar5 = (sqlite3_vtab *)(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        pVtabCursor[iVar12 + 4].pVtab = psVar5;\n        if (psVar5 == (sqlite3_vtab *)0x0) goto LAB_000f7410;\n      }\n      iVar12 = iVar12 + 1;\n      argv = argv + 1;\n    }" { (expression_statement "pcVar4 = (char *)(*(code *)PTR_sqlite3_value_text_0015b614)(*argv);" (assignment_expression "pcVar4 = (char *)(*(code *)PTR_sqlite3_value_text_0015b614)(*argv)" identifier = (cast_expression "(char *)(*(code *)PTR_sqlite3_value_text_0015b614)(*argv)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_sqlite3_value_text_0015b614)(*argv)" (parenthesized_expression "(*(code *)PTR_sqlite3_value_text_0015b614)" ( (pointer_expression "*(code *)PTR_sqlite3_value_text_0015b614" * (cast_expression "(code *)PTR_sqlite3_value_text_0015b614" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*argv)" ( (pointer_expression "*argv" * identifier) ))))) ;) (if_statement "if (pcVar4 != (char *)0x0) {\n        psVar5 = (sqlite3_vtab *)(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        pVtabCursor[iVar12 + 4].pVtab = psVar5;\n        if (psVar5 == (sqlite3_vtab *)0x0) goto LAB_000f7410;\n      }" if (parenthesized_expression "(pcVar4 != (char *)0x0)" ( (binary_expression "pcVar4 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        psVar5 = (sqlite3_vtab *)(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        pVtabCursor[iVar12 + 4].pVtab = psVar5;\n        if (psVar5 == (sqlite3_vtab *)0x0) goto LAB_000f7410;\n      }" { (expression_statement "psVar5 = (sqlite3_vtab *)(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);" (assignment_expression "psVar5 = (sqlite3_vtab *)(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6)" identifier = (cast_expression "(sqlite3_vtab *)(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6)" ( (type_descriptor "sqlite3_vtab *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6)" (parenthesized_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)" ( (pointer_expression "*(code *)PTR_sqlite3_mprintf_0015b628" * (cast_expression "(code *)PTR_sqlite3_mprintf_0015b628" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s6)" ( identifier ))))) ;) (expression_statement "pVtabCursor[iVar12 + 4].pVtab = psVar5;" (assignment_expression "pVtabCursor[iVar12 + 4].pVtab = psVar5" (field_expression "pVtabCursor[iVar12 + 4].pVtab" (subscript_expression "pVtabCursor[iVar12 + 4]" identifier [ (binary_expression "iVar12 + 4" identifier + number_literal) ]) . field_identifier) = identifier) ;) (if_statement "if (psVar5 == (sqlite3_vtab *)0x0) goto LAB_000f7410;" if (parenthesized_expression "(psVar5 == (sqlite3_vtab *)0x0)" ( (binary_expression "psVar5 == (sqlite3_vtab *)0x0" identifier == (cast_expression "(sqlite3_vtab *)0x0" ( (type_descriptor "sqlite3_vtab *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000f7410;" goto statement_identifier ;)) })) (expression_statement "iVar12 = iVar12 + 1;" (assignment_expression "iVar12 = iVar12 + 1" identifier = (binary_expression "iVar12 + 1" identifier + number_literal)) ;) (expression_statement "argv = argv + 1;" (assignment_expression "argv = argv + 1" identifier = (binary_expression "argv + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar12 != argc)" ( (binary_expression "iVar12 != argc" identifier != identifier) )) ;) })) (expression_statement "acc.accError = '\0';" (assignment_expression "acc.accError = '\0'" (field_expression "acc.accError" identifier . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "acc.printfFlags = '\0';" (assignment_expression "acc.printfFlags = '\0'" (field_expression "acc.printfFlags" identifier . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "acc.zText = (char *)0x0;" (assignment_expression "acc.zText = (char *)0x0" (field_expression "acc.zText" identifier . field_identifier) = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "acc.db = (sqlite3 *)0x0;" (assignment_expression "acc.db = (sqlite3 *)0x0" (field_expression "acc.db" identifier . field_identifier) = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "acc.nAlloc = 0;" (assignment_expression "acc.nAlloc = 0" (field_expression "acc.nAlloc" identifier . field_identifier) = number_literal) ;) (expression_statement "acc.nChar = 0;" (assignment_expression "acc.nChar = 0" (field_expression "acc.nChar" identifier . field_identifier) = number_literal) ;) (expression_statement "acc.mxAlloc = (u32)psVar15[1].pModule[1].xDisconnect;" (assignment_expression "acc.mxAlloc = (u32)psVar15[1].pModule[1].xDisconnect" (field_expression "acc.mxAlloc" identifier . field_identifier) = (cast_expression "(u32)psVar15[1].pModule[1].xDisconnect" ( (type_descriptor "u32" type_identifier) ) (field_expression "psVar15[1].pModule[1].xDisconnect" (subscript_expression "psVar15[1].pModule[1]" (field_expression "psVar15[1].pModule" (subscript_expression "psVar15[1]" identifier [ number_literal ]) . field_identifier) [ number_literal ]) . field_identifier))) ;) (expression_statement "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&acc,PTR_DAT_0015b5fc + -0x5360);" (call_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&acc,PTR_DAT_0015b5fc + -0x5360)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)" ( (pointer_expression "*(code *)PTR_sqlite3_str_appendall_0015b7c4" * (cast_expression "(code *)PTR_sqlite3_str_appendall_0015b7c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&acc,PTR_DAT_0015b5fc + -0x5360)" ( (pointer_expression "&acc" & identifier) , (binary_expression "PTR_DAT_0015b5fc + -0x5360" identifier + number_literal) ))) ;) (if_statement "if (pVtabCursor[5].pVtab != (sqlite3_vtab *)0x0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc,PTR_DAT_0015b5fc + -0x5358);\n  }" if (parenthesized_expression "(pVtabCursor[5].pVtab != (sqlite3_vtab *)0x0)" ( (binary_expression "pVtabCursor[5].pVtab != (sqlite3_vtab *)0x0" (field_expression "pVtabCursor[5].pVtab" (subscript_expression "pVtabCursor[5]" identifier [ number_literal ]) . field_identifier) != (cast_expression "(sqlite3_vtab *)0x0" ( (type_descriptor "sqlite3_vtab *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc,PTR_DAT_0015b5fc + -0x5358);\n  }" { (expression_statement "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc,PTR_DAT_0015b5fc + -0x5358);" (call_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc,PTR_DAT_0015b5fc + -0x5358)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)" ( (pointer_expression "*(code *)PTR_sqlite3_str_appendf_0015b810" * (cast_expression "(code *)PTR_sqlite3_str_appendf_0015b810" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&acc,PTR_DAT_0015b5fc + -0x5358)" ( (pointer_expression "&acc" & identifier) , (binary_expression "PTR_DAT_0015b5fc + -0x5358" identifier + number_literal) ))) ;) })) (expression_statement "pcVar4 = *(char **)psVar15[1].nRef;" (assignment_expression "pcVar4 = *(char **)psVar15[1].nRef" identifier = (pointer_expression "*(char **)psVar15[1].nRef" * (cast_expression "(char **)psVar15[1].nRef" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (field_expression "psVar15[1].nRef" (subscript_expression "psVar15[1]" identifier [ number_literal ]) . field_identifier)))) ;) (expression_statement "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&acc);" (call_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&acc)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)" ( (pointer_expression "*(code *)PTR_sqlite3_str_appendall_0015b7c4" * (cast_expression "(code *)PTR_sqlite3_str_appendall_0015b7c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&acc)" ( (pointer_expression "&acc" & identifier) ))) ;) (if_statement "if (pVtabCursor[4].pVtab != (sqlite3_vtab *)0x0) {\n    pcVar4 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc);\n  }" if (parenthesized_expression "(pVtabCursor[4].pVtab != (sqlite3_vtab *)0x0)" ( (binary_expression "pVtabCursor[4].pVtab != (sqlite3_vtab *)0x0" (field_expression "pVtabCursor[4].pVtab" (subscript_expression "pVtabCursor[4]" identifier [ number_literal ]) . field_identifier) != (cast_expression "(sqlite3_vtab *)0x0" ( (type_descriptor "sqlite3_vtab *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar4 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc);\n  }" { (expression_statement "pcVar4 = PTR_LAB_0015b5e8 + 0x55c4;" (assignment_expression "pcVar4 = PTR_LAB_0015b5e8 + 0x55c4" identifier = (binary_expression "PTR_LAB_0015b5e8 + 0x55c4" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc);" (call_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&acc)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)" ( (pointer_expression "*(code *)PTR_sqlite3_str_appendf_0015b810" * (cast_expression "(code *)PTR_sqlite3_str_appendf_0015b810" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&acc)" ( (pointer_expression "&acc" & identifier) ))) ;) })) (expression_statement "pcVar6 = (char *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&acc);" (assignment_expression "pcVar6 = (char *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&acc)" identifier = (cast_expression "(char *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&acc)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&acc)" (parenthesized_expression "(*(code *)(PTR_LAB_0015b6d8 + -0x2478))" ( (pointer_expression "*(code *)(PTR_LAB_0015b6d8 + -0x2478)" * (cast_expression "(code *)(PTR_LAB_0015b6d8 + -0x2478)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0015b6d8 + -0x2478)" ( (binary_expression "PTR_LAB_0015b6d8 + -0x2478" identifier + number_literal) )))) )) (argument_list "(&acc)" ( (pointer_expression "&acc" & identifier) ))))) ;) (if_statement "if (pcVar6 == (char *)0x0) {\nLAB_000f7410:\n    iVar12 = 7;\n  }\n  else {\n    ppStmt = pVtabCursor + 1;\n    pcVar4 = pcVar6;\n    iVar12 = sqlite3_prepare_v2((sqlite3 *)psVar15[1].pModule,pcVar6,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0);\n    (*(code *)PTR_sqlite3_free_0015b620)(pcVar6);\n    if (iVar12 == 0) {\n      iVar12 = pragmaVtabNext(pVtabCursor);\n    }\n    else {\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule);\n      pcVar6 = (char *)(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      psVar15->zErrMsg = pcVar6;\n    }\n  }" if (parenthesized_expression "(pcVar6 == (char *)0x0)" ( (binary_expression "pcVar6 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000f7410:\n    iVar12 = 7;\n  }" { (labeled_statement "LAB_000f7410:\n    iVar12 = 7;" statement_identifier : (expression_statement "iVar12 = 7;" (assignment_expression "iVar12 = 7" identifier = number_literal) ;)) }) (else_clause "else {\n    ppStmt = pVtabCursor + 1;\n    pcVar4 = pcVar6;\n    iVar12 = sqlite3_prepare_v2((sqlite3 *)psVar15[1].pModule,pcVar6,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0);\n    (*(code *)PTR_sqlite3_free_0015b620)(pcVar6);\n    if (iVar12 == 0) {\n      iVar12 = pragmaVtabNext(pVtabCursor);\n    }\n    else {\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule);\n      pcVar6 = (char *)(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      psVar15->zErrMsg = pcVar6;\n    }\n  }" else (compound_statement "{\n    ppStmt = pVtabCursor + 1;\n    pcVar4 = pcVar6;\n    iVar12 = sqlite3_prepare_v2((sqlite3 *)psVar15[1].pModule,pcVar6,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0);\n    (*(code *)PTR_sqlite3_free_0015b620)(pcVar6);\n    if (iVar12 == 0) {\n      iVar12 = pragmaVtabNext(pVtabCursor);\n    }\n    else {\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule);\n      pcVar6 = (char *)(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      psVar15->zErrMsg = pcVar6;\n    }\n  }" { (expression_statement "ppStmt = pVtabCursor + 1;" (assignment_expression "ppStmt = pVtabCursor + 1" identifier = (binary_expression "pVtabCursor + 1" identifier + number_literal)) ;) (expression_statement "pcVar4 = pcVar6;" (assignment_expression "pcVar4 = pcVar6" identifier = identifier) ;) (expression_statement "iVar12 = sqlite3_prepare_v2((sqlite3 *)psVar15[1].pModule,pcVar6,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0);" (assignment_expression "iVar12 = sqlite3_prepare_v2((sqlite3 *)psVar15[1].pModule,pcVar6,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0)" identifier = (call_expression "sqlite3_prepare_v2((sqlite3 *)psVar15[1].pModule,pcVar6,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0)" identifier (argument_list "((sqlite3 *)psVar15[1].pModule,pcVar6,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0)" ( (cast_expression "(sqlite3 *)psVar15[1].pModule" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "psVar15[1].pModule" (subscript_expression "psVar15[1]" identifier [ number_literal ]) . field_identifier)) , identifier , number_literal , (cast_expression "(sqlite3_stmt **)ppStmt" ( (type_descriptor "sqlite3_stmt **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) , (cast_expression "(char **)0x0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal) )))) ;) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(pcVar6);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(pcVar6)" (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 "(pcVar6)" ( identifier ))) ;) (if_statement "if (iVar12 == 0) {\n      iVar12 = pragmaVtabNext(pVtabCursor);\n    }\n    else {\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule);\n      pcVar6 = (char *)(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      psVar15->zErrMsg = pcVar6;\n    }" if (parenthesized_expression "(iVar12 == 0)" ( (binary_expression "iVar12 == 0" identifier == number_literal) )) (compound_statement "{\n      iVar12 = pragmaVtabNext(pVtabCursor);\n    }" { (expression_statement "iVar12 = pragmaVtabNext(pVtabCursor);" (assignment_expression "iVar12 = pragmaVtabNext(pVtabCursor)" identifier = (call_expression "pragmaVtabNext(pVtabCursor)" identifier (argument_list "(pVtabCursor)" ( identifier )))) ;) }) (else_clause "else {\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule);\n      pcVar6 = (char *)(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      psVar15->zErrMsg = pcVar6;\n    }" else (compound_statement "{\n      pcVar4 = (char *)(*(code *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule);\n      pcVar6 = (char *)(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      psVar15->zErrMsg = pcVar6;\n    }" { (expression_statement "pcVar4 = (char *)(*(code *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule);" (assignment_expression "pcVar4 = (char *)(*(code *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule)" identifier = (cast_expression "(char *)(*(code *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule)" (parenthesized_expression "(*(code *)PTR_sqlite3_errmsg_0015b624)" ( (pointer_expression "*(code *)PTR_sqlite3_errmsg_0015b624" * (cast_expression "(code *)PTR_sqlite3_errmsg_0015b624" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(psVar15[1].pModule)" ( (field_expression "psVar15[1].pModule" (subscript_expression "psVar15[1]" identifier [ number_literal ]) . field_identifier) ))))) ;) (expression_statement "pcVar6 = (char *)(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);" (assignment_expression "pcVar6 = (char *)(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4)" identifier = (cast_expression "(char *)(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4)" (parenthesized_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)" ( (pointer_expression "*(code *)PTR_sqlite3_mprintf_0015b628" * (cast_expression "(code *)PTR_sqlite3_mprintf_0015b628" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_LAB_0015b5e8 + 0x71f4)" ( (binary_expression "PTR_LAB_0015b5e8 + 0x71f4" identifier + number_literal) ))))) ;) (expression_statement "psVar15->zErrMsg = pcVar6;" (assignment_expression "psVar15->zErrMsg = pcVar6" (field_expression "psVar15->zErrMsg" identifier -> field_identifier) = identifier) ;) }))) }))) (if_statement "if (iVar3 == *(int *)puVar2) {\n    return iVar12;\n  }" if (parenthesized_expression "(iVar3 == *(int *)puVar2)" ( (binary_expression "iVar3 == *(int *)puVar2" identifier == (pointer_expression "*(int *)puVar2" * (cast_expression "(int *)puVar2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return iVar12;\n  }" { (return_statement "return iVar12;" return identifier ;) })) (expression_statement "pcVar21 = rtreeConstraintError;" (assignment_expression "pcVar21 = rtreeConstraintError" identifier = identifier) ;) (expression_statement "puVar18 = PTR___stack_chk_fail_0015ba10;" (assignment_expression "puVar18 = 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 "piVar14 = *(int **)(puVar18 + 0x645d8);" (assignment_expression "piVar14 = *(int **)(puVar18 + 0x645d8)" identifier = (pointer_expression "*(int **)(puVar18 + 0x645d8)" * (cast_expression "(int **)(puVar18 + 0x645d8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x645d8)" ( (binary_expression "puVar18 + 0x645d8" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(iVar3 + 0x24);" (assignment_expression "iVar10 = *(int *)(iVar3 + 0x24)" identifier = (pointer_expression "*(int *)(iVar3 + 0x24)" * (cast_expression "(int *)(iVar3 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 0x24)" ( (binary_expression "iVar3 + 0x24" identifier + number_literal) ))))) ;) (expression_statement "pcVar6 = *(char **)(iVar3 + 0x20);" (assignment_expression "pcVar6 = *(char **)(iVar3 + 0x20)" identifier = (pointer_expression "*(char **)(iVar3 + 0x20)" * (cast_expression "(char **)(iVar3 + 0x20)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + 0x20)" ( (binary_expression "iVar3 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "puStack_7c = (undefined4 *)*piVar14;" (assignment_expression "puStack_7c = (undefined4 *)*piVar14" identifier = (cast_expression "(undefined4 *)*piVar14" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) ;) (expression_statement "sStack_80.pVtab = (sqlite3_vtab *)0x0;" (assignment_expression "sStack_80.pVtab = (sqlite3_vtab *)0x0" (field_expression "sStack_80.pVtab" identifier . field_identifier) = (cast_expression "(sqlite3_vtab *)0x0" ( (type_descriptor "sqlite3_vtab *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iStack_74 = iVar12;" (assignment_expression "iStack_74 = iVar12" identifier = identifier) ;) (expression_statement "ppsStack_70 = argv;" (assignment_expression "ppsStack_70 = argv" identifier = identifier) ;) (expression_statement "psStack_6c = pVtabCursor;" (assignment_expression "psStack_6c = pVtabCursor" identifier = identifier) ;) (expression_statement "psStack_68 = psVar15;" (assignment_expression "psStack_68 = psVar15" identifier = identifier) ;) (expression_statement "pcStack_64 = pcVar21;" (assignment_expression "pcStack_64 = pcVar21" identifier = identifier) ;) (expression_statement "zSql = (char *)(**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5354,pcVar6);" (assignment_expression "zSql = (char *)(**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5354,pcVar6)" identifier = (cast_expression "(char *)(**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5354,pcVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5354,pcVar6)" (parenthesized_expression "(**(code **)(puVar18 + 0x641d4))" ( (pointer_expression "**(code **)(puVar18 + 0x641d4)" * (pointer_expression "*(code **)(puVar18 + 0x641d4)" * (cast_expression "(code **)(puVar18 + 0x641d4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x641d4)" ( (binary_expression "puVar18 + 0x641d4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar18 + 0x641a8) + -0x5354,pcVar6)" ( (binary_expression "*(int *)(puVar18 + 0x641a8) + -0x5354" (pointer_expression "*(int *)(puVar18 + 0x641a8)" * (cast_expression "(int *)(puVar18 + 0x641a8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + 0x641a8)" ( (binary_expression "puVar18 + 0x641a8" identifier + number_literal) )))) + number_literal) , identifier ))))) ;) (if_statement "if (zSql == (char *)0x0) {\n    iVar12 = 7;\n    (**(code **)(puVar18 + 0x641cc))(0);\nLAB_000f7558:\n    (**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);\n  }\n  else {\n    ppStmt = &sStack_80;\n    iVar10 = -1;\n    pcVar6 = zSql;\n    iVar12 = sqlite3_prepare_v2(*(sqlite3 **)(iVar3 + 0xc),zSql,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0);\n    (**(code **)(puVar18 + 0x641cc))(zSql);\n    if (iVar12 != 0) goto LAB_000f7558;\n    if (pcVar4 == (char *)0x0) {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,0);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5340,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }\n    else {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4);\n      ppStmt = (sqlite3_vtab_cursor *)(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4 + 1);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5320,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }\n    iVar12 = 0x13;\n    (**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);\n  }" if (parenthesized_expression "(zSql == (char *)0x0)" ( (binary_expression "zSql == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar12 = 7;\n    (**(code **)(puVar18 + 0x641cc))(0);\nLAB_000f7558:\n    (**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);\n  }" { (expression_statement "iVar12 = 7;" (assignment_expression "iVar12 = 7" identifier = number_literal) ;) (expression_statement "(**(code **)(puVar18 + 0x641cc))(0);" (call_expression "(**(code **)(puVar18 + 0x641cc))(0)" (parenthesized_expression "(**(code **)(puVar18 + 0x641cc))" ( (pointer_expression "**(code **)(puVar18 + 0x641cc)" * (pointer_expression "*(code **)(puVar18 + 0x641cc)" * (cast_expression "(code **)(puVar18 + 0x641cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x641cc)" ( (binary_expression "puVar18 + 0x641cc" identifier + number_literal) ))))) )) (argument_list "(0)" ( number_literal ))) ;) (labeled_statement "LAB_000f7558:\n    (**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);" statement_identifier : (expression_statement "(**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);" (call_expression "(**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab)" (parenthesized_expression "(**(code **)(puVar18 + 0x641e8))" ( (pointer_expression "**(code **)(puVar18 + 0x641e8)" * (pointer_expression "*(code **)(puVar18 + 0x641e8)" * (cast_expression "(code **)(puVar18 + 0x641e8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x641e8)" ( (binary_expression "puVar18 + 0x641e8" identifier + number_literal) ))))) )) (argument_list "(sStack_80.pVtab)" ( (field_expression "sStack_80.pVtab" identifier . field_identifier) ))) ;)) }) (else_clause "else {\n    ppStmt = &sStack_80;\n    iVar10 = -1;\n    pcVar6 = zSql;\n    iVar12 = sqlite3_prepare_v2(*(sqlite3 **)(iVar3 + 0xc),zSql,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0);\n    (**(code **)(puVar18 + 0x641cc))(zSql);\n    if (iVar12 != 0) goto LAB_000f7558;\n    if (pcVar4 == (char *)0x0) {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,0);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5340,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }\n    else {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4);\n      ppStmt = (sqlite3_vtab_cursor *)(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4 + 1);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5320,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }\n    iVar12 = 0x13;\n    (**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);\n  }" else (compound_statement "{\n    ppStmt = &sStack_80;\n    iVar10 = -1;\n    pcVar6 = zSql;\n    iVar12 = sqlite3_prepare_v2(*(sqlite3 **)(iVar3 + 0xc),zSql,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0);\n    (**(code **)(puVar18 + 0x641cc))(zSql);\n    if (iVar12 != 0) goto LAB_000f7558;\n    if (pcVar4 == (char *)0x0) {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,0);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5340,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }\n    else {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4);\n      ppStmt = (sqlite3_vtab_cursor *)(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4 + 1);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5320,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }\n    iVar12 = 0x13;\n    (**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);\n  }" { (expression_statement "ppStmt = &sStack_80;" (assignment_expression "ppStmt = &sStack_80" identifier = (pointer_expression "&sStack_80" & identifier)) ;) (expression_statement "iVar10 = -1;" (assignment_expression "iVar10 = -1" identifier = number_literal) ;) (expression_statement "pcVar6 = zSql;" (assignment_expression "pcVar6 = zSql" identifier = identifier) ;) (expression_statement "iVar12 = sqlite3_prepare_v2(*(sqlite3 **)(iVar3 + 0xc),zSql,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0);" (assignment_expression "iVar12 = sqlite3_prepare_v2(*(sqlite3 **)(iVar3 + 0xc),zSql,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0)" identifier = (call_expression "sqlite3_prepare_v2(*(sqlite3 **)(iVar3 + 0xc),zSql,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0)" identifier (argument_list "(*(sqlite3 **)(iVar3 + 0xc),zSql,-1,(sqlite3_stmt **)ppStmt,\n                                (char **)0x0)" ( (pointer_expression "*(sqlite3 **)(iVar3 + 0xc)" * (cast_expression "(sqlite3 **)(iVar3 + 0xc)" ( (type_descriptor "sqlite3 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + 0xc)" ( (binary_expression "iVar3 + 0xc" identifier + number_literal) )))) , identifier , number_literal , (cast_expression "(sqlite3_stmt **)ppStmt" ( (type_descriptor "sqlite3_stmt **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) , (cast_expression "(char **)0x0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal) )))) ;) (expression_statement "(**(code **)(puVar18 + 0x641cc))(zSql);" (call_expression "(**(code **)(puVar18 + 0x641cc))(zSql)" (parenthesized_expression "(**(code **)(puVar18 + 0x641cc))" ( (pointer_expression "**(code **)(puVar18 + 0x641cc)" * (pointer_expression "*(code **)(puVar18 + 0x641cc)" * (cast_expression "(code **)(puVar18 + 0x641cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x641cc)" ( (binary_expression "puVar18 + 0x641cc" identifier + number_literal) ))))) )) (argument_list "(zSql)" ( identifier ))) ;) (if_statement "if (iVar12 != 0) goto LAB_000f7558;" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000f7558;" goto statement_identifier ;)) (if_statement "if (pcVar4 == (char *)0x0) {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,0);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5340,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }\n    else {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4);\n      ppStmt = (sqlite3_vtab_cursor *)(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4 + 1);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5320,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }" if (parenthesized_expression "(pcVar4 == (char *)0x0)" ( (binary_expression "pcVar4 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,0);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5340,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }" { (expression_statement "iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,0);" (assignment_expression "iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,0)" identifier = (call_expression "(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,0)" (parenthesized_expression "(**(code **)(puVar18 + 0x64430))" ( (pointer_expression "**(code **)(puVar18 + 0x64430)" * (pointer_expression "*(code **)(puVar18 + 0x64430)" * (cast_expression "(code **)(puVar18 + 0x64430)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x64430)" ( (binary_expression "puVar18 + 0x64430" identifier + number_literal) ))))) )) (argument_list "(sStack_80.pVtab,0)" ( (field_expression "sStack_80.pVtab" identifier . field_identifier) , number_literal )))) ;) (expression_statement "pcVar6 = *(char **)(iVar3 + 0x24);" (assignment_expression "pcVar6 = *(char **)(iVar3 + 0x24)" identifier = (pointer_expression "*(char **)(iVar3 + 0x24)" * (cast_expression "(char **)(iVar3 + 0x24)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + 0x24)" ( (binary_expression "iVar3 + 0x24" identifier + number_literal) ))))) ;) (expression_statement "uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5340,pcVar6);" (assignment_expression "uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5340,pcVar6)" identifier = (call_expression "(**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5340,pcVar6)" (parenthesized_expression "(**(code **)(puVar18 + 0x641d4))" ( (pointer_expression "**(code **)(puVar18 + 0x641d4)" * (pointer_expression "*(code **)(puVar18 + 0x641d4)" * (cast_expression "(code **)(puVar18 + 0x641d4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x641d4)" ( (binary_expression "puVar18 + 0x641d4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar18 + 0x641a8) + -0x5340,pcVar6)" ( (binary_expression "*(int *)(puVar18 + 0x641a8) + -0x5340" (pointer_expression "*(int *)(puVar18 + 0x641a8)" * (cast_expression "(int *)(puVar18 + 0x641a8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + 0x641a8)" ( (binary_expression "puVar18 + 0x641a8" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (expression_statement "*(undefined4 *)(iVar3 + 8) = uVar7;" (assignment_expression "*(undefined4 *)(iVar3 + 8) = uVar7" (pointer_expression "*(undefined4 *)(iVar3 + 8)" * (cast_expression "(undefined4 *)(iVar3 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 8)" ( (binary_expression "iVar3 + 8" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4);\n      ppStmt = (sqlite3_vtab_cursor *)(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4 + 1);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5320,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }" else (compound_statement "{\n      iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4);\n      ppStmt = (sqlite3_vtab_cursor *)(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4 + 1);\n      pcVar6 = *(char **)(iVar3 + 0x24);\n      uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5320,pcVar6);\n      *(undefined4 *)(iVar3 + 8) = uVar7;\n    }" { (expression_statement "iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4);" (assignment_expression "iVar10 = (**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4)" identifier = (call_expression "(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4)" (parenthesized_expression "(**(code **)(puVar18 + 0x64430))" ( (pointer_expression "**(code **)(puVar18 + 0x64430)" * (pointer_expression "*(code **)(puVar18 + 0x64430)" * (cast_expression "(code **)(puVar18 + 0x64430)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x64430)" ( (binary_expression "puVar18 + 0x64430" identifier + number_literal) ))))) )) (argument_list "(sStack_80.pVtab,pcVar4)" ( (field_expression "sStack_80.pVtab" identifier . field_identifier) , identifier )))) ;) (expression_statement "ppStmt = (sqlite3_vtab_cursor *)(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4 + 1);" (assignment_expression "ppStmt = (sqlite3_vtab_cursor *)(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4 + 1)" identifier = (cast_expression "(sqlite3_vtab_cursor *)(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4 + 1)" ( (type_descriptor "sqlite3_vtab_cursor *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar18 + 0x64430))(sStack_80.pVtab,pcVar4 + 1)" (parenthesized_expression "(**(code **)(puVar18 + 0x64430))" ( (pointer_expression "**(code **)(puVar18 + 0x64430)" * (pointer_expression "*(code **)(puVar18 + 0x64430)" * (cast_expression "(code **)(puVar18 + 0x64430)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x64430)" ( (binary_expression "puVar18 + 0x64430" identifier + number_literal) ))))) )) (argument_list "(sStack_80.pVtab,pcVar4 + 1)" ( (field_expression "sStack_80.pVtab" identifier . field_identifier) , (binary_expression "pcVar4 + 1" identifier + number_literal) ))))) ;) (expression_statement "pcVar6 = *(char **)(iVar3 + 0x24);" (assignment_expression "pcVar6 = *(char **)(iVar3 + 0x24)" identifier = (pointer_expression "*(char **)(iVar3 + 0x24)" * (cast_expression "(char **)(iVar3 + 0x24)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + 0x24)" ( (binary_expression "iVar3 + 0x24" identifier + number_literal) ))))) ;) (expression_statement "uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5320,pcVar6);" (assignment_expression "uVar7 = (**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5320,pcVar6)" identifier = (call_expression "(**(code **)(puVar18 + 0x641d4))(*(int *)(puVar18 + 0x641a8) + -0x5320,pcVar6)" (parenthesized_expression "(**(code **)(puVar18 + 0x641d4))" ( (pointer_expression "**(code **)(puVar18 + 0x641d4)" * (pointer_expression "*(code **)(puVar18 + 0x641d4)" * (cast_expression "(code **)(puVar18 + 0x641d4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x641d4)" ( (binary_expression "puVar18 + 0x641d4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar18 + 0x641a8) + -0x5320,pcVar6)" ( (binary_expression "*(int *)(puVar18 + 0x641a8) + -0x5320" (pointer_expression "*(int *)(puVar18 + 0x641a8)" * (cast_expression "(int *)(puVar18 + 0x641a8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar18 + 0x641a8)" ( (binary_expression "puVar18 + 0x641a8" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (expression_statement "*(undefined4 *)(iVar3 + 8) = uVar7;" (assignment_expression "*(undefined4 *)(iVar3 + 8) = uVar7" (pointer_expression "*(undefined4 *)(iVar3 + 8)" * (cast_expression "(undefined4 *)(iVar3 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + 8)" ( (binary_expression "iVar3 + 8" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "iVar12 = 0x13;" (assignment_expression "iVar12 = 0x13" identifier = number_literal) ;) (expression_statement "(**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab);" (call_expression "(**(code **)(puVar18 + 0x641e8))(sStack_80.pVtab)" (parenthesized_expression "(**(code **)(puVar18 + 0x641e8))" ( (pointer_expression "**(code **)(puVar18 + 0x641e8)" * (pointer_expression "*(code **)(puVar18 + 0x641e8)" * (cast_expression "(code **)(puVar18 + 0x641e8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x641e8)" ( (binary_expression "puVar18 + 0x641e8" identifier + number_literal) ))))) )) (argument_list "(sStack_80.pVtab)" ( (field_expression "sStack_80.pVtab" identifier . field_identifier) ))) ;) }))) (if_statement "if (puStack_7c == (undefined4 *)*piVar14) {\n    return iVar12;\n  }" if (parenthesized_expression "(puStack_7c == (undefined4 *)*piVar14)" ( (binary_expression "puStack_7c == (undefined4 *)*piVar14" identifier == (cast_expression "(undefined4 *)*piVar14" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) )) (compound_statement "{\n    return iVar12;\n  }" { (return_statement "return iVar12;" return identifier ;) })) (expression_statement "pcVar21 = *(code **)(puVar18 + 0x645bc);" (assignment_expression "pcVar21 = *(code **)(puVar18 + 0x645bc)" identifier = (pointer_expression "*(code **)(puVar18 + 0x645bc)" * (cast_expression "(code **)(puVar18 + 0x645bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar18 + 0x645bc)" ( (binary_expression "puVar18 + 0x645bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar22 = rtreeCheckPrepare;" (assignment_expression "pcVar22 = rtreeCheckPrepare" identifier = identifier) ;) (expression_statement "puVar8 = puStack_7c;" (assignment_expression "puVar8 = puStack_7c" identifier = identifier) ;) (expression_statement "(*pcVar21)();" (call_expression "(*pcVar21)()" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "ppStmt_00 = (sqlite3_vtab_cursor *)(pcVar21 + 0x6bfc4);" (assignment_expression "ppStmt_00 = (sqlite3_vtab_cursor *)(pcVar21 + 0x6bfc4)" identifier = (cast_expression "(sqlite3_vtab_cursor *)(pcVar21 + 0x6bfc4)" ( (type_descriptor "sqlite3_vtab_cursor *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x6bfc4)" ( (binary_expression "pcVar21 + 0x6bfc4" identifier + number_literal) )))) ;) (expression_statement "zSql_00 = &iStack_98;" (assignment_expression "zSql_00 = &iStack_98" identifier = (pointer_expression "&iStack_98" & identifier)) ;) (expression_statement "piVar13 = *(int **)(pcVar21 + 0x64440);" (assignment_expression "piVar13 = *(int **)(pcVar21 + 0x64440)" identifier = (pointer_expression "*(int **)(pcVar21 + 0x64440)" * (cast_expression "(int **)(pcVar21 + 0x64440)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x64440)" ( (binary_expression "pcVar21 + 0x64440" identifier + number_literal) ))))) ;) (expression_statement "sStack_b8.pVtab = (sqlite3_vtab *)0x0;" (assignment_expression "sStack_b8.pVtab = (sqlite3_vtab *)0x0" (field_expression "sStack_b8.pVtab" identifier . field_identifier) = (cast_expression "(sqlite3_vtab *)0x0" ( (type_descriptor "sqlite3_vtab *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psStack_b4 = (sqlite3 *)*piVar13;" (assignment_expression "psStack_b4 = (sqlite3 *)*piVar13" identifier = (cast_expression "(sqlite3 *)*piVar13" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar13" * identifier))) ;) (expression_statement "iStack_b0 = iVar3;" (assignment_expression "iStack_b0 = iVar3" identifier = identifier) ;) (expression_statement "iStack_ac = iVar12;" (assignment_expression "iStack_ac = iVar12" identifier = identifier) ;) (expression_statement "piStack_a8 = piVar14;" (assignment_expression "piStack_a8 = piVar14" identifier = identifier) ;) (expression_statement "pcStack_a4 = pcVar22;" (assignment_expression "pcStack_a4 = pcVar22" identifier = identifier) ;) (expression_statement "iStack_98 = iVar10;" (assignment_expression "iStack_98 = iVar10" identifier = identifier) ;) (expression_statement "psStack_94 = ppStmt;" (assignment_expression "psStack_94 = ppStmt" identifier = identifier) ;) (expression_statement "piVar14 = (int *)(**(code **)(pcVar21 + 0x6402c))(pcVar6);" (assignment_expression "piVar14 = (int *)(**(code **)(pcVar21 + 0x6402c))(pcVar6)" identifier = (cast_expression "(int *)(**(code **)(pcVar21 + 0x6402c))(pcVar6)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar21 + 0x6402c))(pcVar6)" (parenthesized_expression "(**(code **)(pcVar21 + 0x6402c))" ( (pointer_expression "**(code **)(pcVar21 + 0x6402c)" * (pointer_expression "*(code **)(pcVar21 + 0x6402c)" * (cast_expression "(code **)(pcVar21 + 0x6402c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x6402c)" ( (binary_expression "pcVar21 + 0x6402c" identifier + number_literal) ))))) )) (argument_list "(pcVar6)" ( identifier ))))) ;) (if_statement "if (puVar8[10] == 0) {\n    if (piVar14 == (int *)0x0) {\n      puVar8[10] = 7;\n    }\n    else {\n      ppStmt = &sStack_b8;\n      iVar10 = -1;\n      in_stack_ffffff30 = 0;\n      zSql_00 = piVar14;\n      iVar12 = sqlite3_prepare_v2((sqlite3 *)*puVar8,(char *)piVar14,-1,(sqlite3_stmt **)ppStmt,\n                                  (char **)0x0);\n      puVar8[10] = iVar12;\n    }\n  }" if (parenthesized_expression "(puVar8[10] == 0)" ( (binary_expression "puVar8[10] == 0" (subscript_expression "puVar8[10]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n    if (piVar14 == (int *)0x0) {\n      puVar8[10] = 7;\n    }\n    else {\n      ppStmt = &sStack_b8;\n      iVar10 = -1;\n      in_stack_ffffff30 = 0;\n      zSql_00 = piVar14;\n      iVar12 = sqlite3_prepare_v2((sqlite3 *)*puVar8,(char *)piVar14,-1,(sqlite3_stmt **)ppStmt,\n                                  (char **)0x0);\n      puVar8[10] = iVar12;\n    }\n  }" { (if_statement "if (piVar14 == (int *)0x0) {\n      puVar8[10] = 7;\n    }\n    else {\n      ppStmt = &sStack_b8;\n      iVar10 = -1;\n      in_stack_ffffff30 = 0;\n      zSql_00 = piVar14;\n      iVar12 = sqlite3_prepare_v2((sqlite3 *)*puVar8,(char *)piVar14,-1,(sqlite3_stmt **)ppStmt,\n                                  (char **)0x0);\n      puVar8[10] = iVar12;\n    }" if (parenthesized_expression "(piVar14 == (int *)0x0)" ( (binary_expression "piVar14 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      puVar8[10] = 7;\n    }" { (expression_statement "puVar8[10] = 7;" (assignment_expression "puVar8[10] = 7" (subscript_expression "puVar8[10]" identifier [ number_literal ]) = number_literal) ;) }) (else_clause "else {\n      ppStmt = &sStack_b8;\n      iVar10 = -1;\n      in_stack_ffffff30 = 0;\n      zSql_00 = piVar14;\n      iVar12 = sqlite3_prepare_v2((sqlite3 *)*puVar8,(char *)piVar14,-1,(sqlite3_stmt **)ppStmt,\n                                  (char **)0x0);\n      puVar8[10] = iVar12;\n    }" else (compound_statement "{\n      ppStmt = &sStack_b8;\n      iVar10 = -1;\n      in_stack_ffffff30 = 0;\n      zSql_00 = piVar14;\n      iVar12 = sqlite3_prepare_v2((sqlite3 *)*puVar8,(char *)piVar14,-1,(sqlite3_stmt **)ppStmt,\n                                  (char **)0x0);\n      puVar8[10] = iVar12;\n    }" { (expression_statement "ppStmt = &sStack_b8;" (assignment_expression "ppStmt = &sStack_b8" identifier = (pointer_expression "&sStack_b8" & identifier)) ;) (expression_statement "iVar10 = -1;" (assignment_expression "iVar10 = -1" identifier = number_literal) ;) (expression_statement "in_stack_ffffff30 = 0;" (assignment_expression "in_stack_ffffff30 = 0" identifier = number_literal) ;) (expression_statement "zSql_00 = piVar14;" (assignment_expression "zSql_00 = piVar14" identifier = identifier) ;) (expression_statement "iVar12 = sqlite3_prepare_v2((sqlite3 *)*puVar8,(char *)piVar14,-1,(sqlite3_stmt **)ppStmt,\n                                  (char **)0x0);" (assignment_expression "iVar12 = sqlite3_prepare_v2((sqlite3 *)*puVar8,(char *)piVar14,-1,(sqlite3_stmt **)ppStmt,\n                                  (char **)0x0)" identifier = (call_expression "sqlite3_prepare_v2((sqlite3 *)*puVar8,(char *)piVar14,-1,(sqlite3_stmt **)ppStmt,\n                                  (char **)0x0)" identifier (argument_list "((sqlite3 *)*puVar8,(char *)piVar14,-1,(sqlite3_stmt **)ppStmt,\n                                  (char **)0x0)" ( (cast_expression "(sqlite3 *)*puVar8" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar8" * identifier)) , (cast_expression "(char *)piVar14" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , number_literal , (cast_expression "(sqlite3_stmt **)ppStmt" ( (type_descriptor "sqlite3_stmt **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) , (cast_expression "(char **)0x0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal) )))) ;) (expression_statement "puVar8[10] = iVar12;" (assignment_expression "puVar8[10] = iVar12" (subscript_expression "puVar8[10]" identifier [ number_literal ]) = identifier) ;) }))) })) (expression_statement "(**(code **)(pcVar21 + 0x64034))(piVar14);" (call_expression "(**(code **)(pcVar21 + 0x64034))(piVar14)" (parenthesized_expression "(**(code **)(pcVar21 + 0x64034))" ( (pointer_expression "**(code **)(pcVar21 + 0x64034)" * (pointer_expression "*(code **)(pcVar21 + 0x64034)" * (cast_expression "(code **)(pcVar21 + 0x64034)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x64034)" ( (binary_expression "pcVar21 + 0x64034" identifier + number_literal) ))))) )) (argument_list "(piVar14)" ( identifier ))) ;) (if_statement "if (psStack_b4 == (sqlite3 *)*piVar13) {\n    return (int)sStack_b8.pVtab;\n  }" if (parenthesized_expression "(psStack_b4 == (sqlite3 *)*piVar13)" ( (binary_expression "psStack_b4 == (sqlite3 *)*piVar13" identifier == (cast_expression "(sqlite3 *)*piVar13" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar13" * identifier))) )) (compound_statement "{\n    return (int)sStack_b8.pVtab;\n  }" { (return_statement "return (int)sStack_b8.pVtab;" return (cast_expression "(int)sStack_b8.pVtab" ( (type_descriptor "int" primitive_type) ) (field_expression "sStack_b8.pVtab" identifier . field_identifier)) ;) })) (expression_statement "pcVar21 = *(code **)(pcVar21 + 0x64424);" (assignment_expression "pcVar21 = *(code **)(pcVar21 + 0x64424)" identifier = (pointer_expression "*(code **)(pcVar21 + 0x64424)" * (cast_expression "(code **)(pcVar21 + 0x64424)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x64424)" ( (binary_expression "pcVar21 + 0x64424" identifier + number_literal) ))))) ;) (expression_statement "psVar9 = psStack_b4;" (assignment_expression "psVar9 = psStack_b4" identifier = identifier) ;) (expression_statement "(*pcVar21)();" (call_expression "(*pcVar21)()" (parenthesized_expression "(*pcVar21)" ( (pointer_expression "*pcVar21" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puStack_f8 = puVar2;" (assignment_expression "puStack_f8 = puVar2" identifier = identifier) ;) (expression_statement "piVar16 = *(int **)(pcVar21 + 0x6435c);" (assignment_expression "piVar16 = *(int **)(pcVar21 + 0x6435c)" identifier = (pointer_expression "*(int **)(pcVar21 + 0x6435c)" * (cast_expression "(int **)(pcVar21 + 0x6435c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x6435c)" ( (binary_expression "pcVar21 + 0x6435c" identifier + number_literal) ))))) ;) (expression_statement "iStack_11c = 0;" (assignment_expression "iStack_11c = 0" identifier = number_literal) ;) (expression_statement "psStack_10c = (sqlite3 *)*piVar16;" (assignment_expression "psStack_10c = (sqlite3 *)*piVar16" identifier = (cast_expression "(sqlite3 *)*piVar16" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar16" * identifier))) ;) (expression_statement "iVar12 = iVar10;" (assignment_expression "iVar12 = iVar10" identifier = identifier) ;) (expression_statement "psVar11 = ppStmt;" (assignment_expression "psVar11 = ppStmt" identifier = identifier) ;) (expression_statement "piStack_108 = piVar13;" (assignment_expression "piStack_108 = piVar13" identifier = identifier) ;) (expression_statement "piStack_104 = piVar14;" (assignment_expression "piStack_104 = piVar14" identifier = identifier) ;) (expression_statement "puStack_100 = puVar8;" (assignment_expression "puStack_100 = puVar8" identifier = identifier) ;) (expression_statement "pcStack_fc = pcVar4;" (assignment_expression "pcStack_fc = pcVar4" identifier = identifier) ;) (expression_statement "iStack_f4 = argc;" (assignment_expression "iStack_f4 = argc" identifier = identifier) ;) (expression_statement "puStack_f0 = unaff_s6;" (assignment_expression "puStack_f0 = unaff_s6" identifier = identifier) ;) (expression_statement "iVar3 = (**(code **)(pcVar21 + 0x63f68))(*(int *)(pcVar21 + 0x63f2c) + -0x65b0,iVar10);" (assignment_expression "iVar3 = (**(code **)(pcVar21 + 0x63f68))(*(int *)(pcVar21 + 0x63f2c) + -0x65b0,iVar10)" identifier = (call_expression "(**(code **)(pcVar21 + 0x63f68))(*(int *)(pcVar21 + 0x63f2c) + -0x65b0,iVar10)" (parenthesized_expression "(**(code **)(pcVar21 + 0x63f68))" ( (pointer_expression "**(code **)(pcVar21 + 0x63f68)" * (pointer_expression "*(code **)(pcVar21 + 0x63f68)" * (cast_expression "(code **)(pcVar21 + 0x63f68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x63f68)" ( (binary_expression "pcVar21 + 0x63f68" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0x63f2c) + -0x65b0,iVar10)" ( (binary_expression "*(int *)(pcVar21 + 0x63f2c) + -0x65b0" (pointer_expression "*(int *)(pcVar21 + 0x63f2c)" * (cast_expression "(int *)(pcVar21 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x63f2c)" ( (binary_expression "pcVar21 + 0x63f2c" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n    piVar14 = (int *)(**(code **)(pcVar21 + 0x63f58))(*(int *)(pcVar21 + 0x63f2c) + -0x52f8);\n    if (piVar14 == (int *)0x0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    iVar12 = -1;\n  }\n  else {\n    piStack_118 = (int *)0x0;\n    pcVar22 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1bd4);\n    iStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar19 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1cd4);\n    (*pcVar19)(&piStack_118,zSql_00,&iStack_11c);\n    (*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar19)(&piStack_118,iVar10,&iStack_11c);\n    zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x5cfc);\n    (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n    piVar14 = piStack_118;\n    iVar12 = iStack_114;\n    if (0 < (int)ppStmt) {\n      iVar3 = *(int *)(pcVar21 + 0x6404c);\n      psVar20 = (sqlite3_vtab_cursor *)0x0;\n      iVar10 = *(int *)(pcVar21 + 0x63f18);\n      iVar17 = *(int *)(pcVar21 + 0x63f2c);\n      zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x53f4);\n      do {\n        while (ppsVar1 = &psVar20->pVtab,\n              psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),\n              *(char *)((int)ppsVar1 + iStack_cc) != '\0') {\n          (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n          (*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c);\n          (*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c);\n          (*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c);\n          zSql_00 = (int *)(iVar10 + 0x5c88);\n          piVar14 = piStack_118;\n          iVar12 = iStack_114;\n          if (ppStmt == psVar20) goto joined_r0x000f7930;\n        }\n        piVar14 = piStack_118;\n        iVar12 = iStack_114;\n      } while (ppStmt != psVar20);\n    }\n  }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n    piVar14 = (int *)(**(code **)(pcVar21 + 0x63f58))(*(int *)(pcVar21 + 0x63f2c) + -0x52f8);\n    if (piVar14 == (int *)0x0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    iVar12 = -1;\n  }" { (expression_statement "piVar14 = (int *)(**(code **)(pcVar21 + 0x63f58))(*(int *)(pcVar21 + 0x63f2c) + -0x52f8);" (assignment_expression "piVar14 = (int *)(**(code **)(pcVar21 + 0x63f58))(*(int *)(pcVar21 + 0x63f2c) + -0x52f8)" identifier = (cast_expression "(int *)(**(code **)(pcVar21 + 0x63f58))(*(int *)(pcVar21 + 0x63f2c) + -0x52f8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar21 + 0x63f58))(*(int *)(pcVar21 + 0x63f2c) + -0x52f8)" (parenthesized_expression "(**(code **)(pcVar21 + 0x63f58))" ( (pointer_expression "**(code **)(pcVar21 + 0x63f58)" * (pointer_expression "*(code **)(pcVar21 + 0x63f58)" * (cast_expression "(code **)(pcVar21 + 0x63f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x63f58)" ( (binary_expression "pcVar21 + 0x63f58" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar21 + 0x63f2c) + -0x52f8)" ( (binary_expression "*(int *)(pcVar21 + 0x63f2c) + -0x52f8" (pointer_expression "*(int *)(pcVar21 + 0x63f2c)" * (cast_expression "(int *)(pcVar21 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x63f2c)" ( (binary_expression "pcVar21 + 0x63f2c" identifier + number_literal) )))) + number_literal) ))))) ;) (if_statement "if (piVar14 == (int *)0x0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }" if (parenthesized_expression "(piVar14 == (int *)0x0)" ( (binary_expression "piVar14 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }" { (expression_statement "iStack_11c = 7;" (assignment_expression "iStack_11c = 7" identifier = number_literal) ;) (goto_statement "goto LAB_000f778c;" goto statement_identifier ;) })) (expression_statement "iVar12 = -1;" (assignment_expression "iVar12 = -1" identifier = number_literal) ;) }) (else_clause "else {\n    piStack_118 = (int *)0x0;\n    pcVar22 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1bd4);\n    iStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar19 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1cd4);\n    (*pcVar19)(&piStack_118,zSql_00,&iStack_11c);\n    (*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar19)(&piStack_118,iVar10,&iStack_11c);\n    zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x5cfc);\n    (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n    piVar14 = piStack_118;\n    iVar12 = iStack_114;\n    if (0 < (int)ppStmt) {\n      iVar3 = *(int *)(pcVar21 + 0x6404c);\n      psVar20 = (sqlite3_vtab_cursor *)0x0;\n      iVar10 = *(int *)(pcVar21 + 0x63f18);\n      iVar17 = *(int *)(pcVar21 + 0x63f2c);\n      zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x53f4);\n      do {\n        while (ppsVar1 = &psVar20->pVtab,\n              psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),\n              *(char *)((int)ppsVar1 + iStack_cc) != '\0') {\n          (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n          (*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c);\n          (*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c);\n          (*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c);\n          zSql_00 = (int *)(iVar10 + 0x5c88);\n          piVar14 = piStack_118;\n          iVar12 = iStack_114;\n          if (ppStmt == psVar20) goto joined_r0x000f7930;\n        }\n        piVar14 = piStack_118;\n        iVar12 = iStack_114;\n      } while (ppStmt != psVar20);\n    }\n  }" else (compound_statement "{\n    piStack_118 = (int *)0x0;\n    pcVar22 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1bd4);\n    iStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar19 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1cd4);\n    (*pcVar19)(&piStack_118,zSql_00,&iStack_11c);\n    (*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar19)(&piStack_118,iVar10,&iStack_11c);\n    zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x5cfc);\n    (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n    piVar14 = piStack_118;\n    iVar12 = iStack_114;\n    if (0 < (int)ppStmt) {\n      iVar3 = *(int *)(pcVar21 + 0x6404c);\n      psVar20 = (sqlite3_vtab_cursor *)0x0;\n      iVar10 = *(int *)(pcVar21 + 0x63f18);\n      iVar17 = *(int *)(pcVar21 + 0x63f2c);\n      zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x53f4);\n      do {\n        while (ppsVar1 = &psVar20->pVtab,\n              psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),\n              *(char *)((int)ppsVar1 + iStack_cc) != '\0') {\n          (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n          (*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c);\n          (*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c);\n          (*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c);\n          zSql_00 = (int *)(iVar10 + 0x5c88);\n          piVar14 = piStack_118;\n          iVar12 = iStack_114;\n          if (ppStmt == psVar20) goto joined_r0x000f7930;\n        }\n        piVar14 = piStack_118;\n        iVar12 = iStack_114;\n      } while (ppStmt != psVar20);\n    }\n  }" { (expression_statement "piStack_118 = (int *)0x0;" (assignment_expression "piStack_118 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar22 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1bd4);" (assignment_expression "pcVar22 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1bd4)" identifier = (cast_expression "(code *)(*(int *)(pcVar21 + 0x6404c) + -0x1bd4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar21 + 0x6404c) + -0x1bd4)" ( (binary_expression "*(int *)(pcVar21 + 0x6404c) + -0x1bd4" (pointer_expression "*(int *)(pcVar21 + 0x6404c)" * (cast_expression "(int *)(pcVar21 + 0x6404c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x6404c)" ( (binary_expression "pcVar21 + 0x6404c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iStack_114 = 0;" (assignment_expression "iStack_114 = 0" identifier = number_literal) ;) (expression_statement "uStack_110 = 0;" (assignment_expression "uStack_110 = 0" identifier = number_literal) ;) (expression_statement "(*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x5288,&iStack_11c);" (call_expression "(*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x5288,&iStack_11c)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x5288,&iStack_11c)" ( (pointer_expression "&piStack_118" & identifier) , (binary_expression "*(int *)(pcVar21 + 0x63f2c) + -0x5288" (pointer_expression "*(int *)(pcVar21 + 0x63f2c)" * (cast_expression "(int *)(pcVar21 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x63f2c)" ( (binary_expression "pcVar21 + 0x63f2c" identifier + number_literal) )))) + number_literal) , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "pcVar19 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1cd4);" (assignment_expression "pcVar19 = (code *)(*(int *)(pcVar21 + 0x6404c) + -0x1cd4)" identifier = (cast_expression "(code *)(*(int *)(pcVar21 + 0x6404c) + -0x1cd4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar21 + 0x6404c) + -0x1cd4)" ( (binary_expression "*(int *)(pcVar21 + 0x6404c) + -0x1cd4" (pointer_expression "*(int *)(pcVar21 + 0x6404c)" * (cast_expression "(int *)(pcVar21 + 0x6404c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x6404c)" ( (binary_expression "pcVar21 + 0x6404c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar19)(&piStack_118,zSql_00,&iStack_11c);" (call_expression "(*pcVar19)(&piStack_118,zSql_00,&iStack_11c)" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "(&piStack_118,zSql_00,&iStack_11c)" ( (pointer_expression "&piStack_118" & identifier) , identifier , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x1e34,&iStack_11c);" (call_expression "(*pcVar22)(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x1e34,&iStack_11c)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(&piStack_118,*(int *)(pcVar21 + 0x63f2c) + -0x1e34,&iStack_11c)" ( (pointer_expression "&piStack_118" & identifier) , (binary_expression "*(int *)(pcVar21 + 0x63f2c) + -0x1e34" (pointer_expression "*(int *)(pcVar21 + 0x63f2c)" * (cast_expression "(int *)(pcVar21 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x63f2c)" ( (binary_expression "pcVar21 + 0x63f2c" identifier + number_literal) )))) + number_literal) , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*pcVar19)(&piStack_118,iVar10,&iStack_11c);" (call_expression "(*pcVar19)(&piStack_118,iVar10,&iStack_11c)" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "(&piStack_118,iVar10,&iStack_11c)" ( (pointer_expression "&piStack_118" & identifier) , identifier , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x5cfc);" (assignment_expression "zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x5cfc)" identifier = (cast_expression "(int *)(*(int *)(pcVar21 + 0x63f18) + 0x5cfc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar21 + 0x63f18) + 0x5cfc)" ( (binary_expression "*(int *)(pcVar21 + 0x63f18) + 0x5cfc" (pointer_expression "*(int *)(pcVar21 + 0x63f18)" * (cast_expression "(int *)(pcVar21 + 0x63f18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x63f18)" ( (binary_expression "pcVar21 + 0x63f18" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar22)(&piStack_118,zSql_00,&iStack_11c);" (call_expression "(*pcVar22)(&piStack_118,zSql_00,&iStack_11c)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(&piStack_118,zSql_00,&iStack_11c)" ( (pointer_expression "&piStack_118" & identifier) , identifier , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "piVar14 = piStack_118;" (assignment_expression "piVar14 = piStack_118" identifier = identifier) ;) (expression_statement "iVar12 = iStack_114;" (assignment_expression "iVar12 = iStack_114" identifier = identifier) ;) (if_statement "if (0 < (int)ppStmt) {\n      iVar3 = *(int *)(pcVar21 + 0x6404c);\n      psVar20 = (sqlite3_vtab_cursor *)0x0;\n      iVar10 = *(int *)(pcVar21 + 0x63f18);\n      iVar17 = *(int *)(pcVar21 + 0x63f2c);\n      zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x53f4);\n      do {\n        while (ppsVar1 = &psVar20->pVtab,\n              psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),\n              *(char *)((int)ppsVar1 + iStack_cc) != '\0') {\n          (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n          (*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c);\n          (*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c);\n          (*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c);\n          zSql_00 = (int *)(iVar10 + 0x5c88);\n          piVar14 = piStack_118;\n          iVar12 = iStack_114;\n          if (ppStmt == psVar20) goto joined_r0x000f7930;\n        }\n        piVar14 = piStack_118;\n        iVar12 = iStack_114;\n      } while (ppStmt != psVar20);\n    }" if (parenthesized_expression "(0 < (int)ppStmt)" ( (binary_expression "0 < (int)ppStmt" number_literal < (cast_expression "(int)ppStmt" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      iVar3 = *(int *)(pcVar21 + 0x6404c);\n      psVar20 = (sqlite3_vtab_cursor *)0x0;\n      iVar10 = *(int *)(pcVar21 + 0x63f18);\n      iVar17 = *(int *)(pcVar21 + 0x63f2c);\n      zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x53f4);\n      do {\n        while (ppsVar1 = &psVar20->pVtab,\n              psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),\n              *(char *)((int)ppsVar1 + iStack_cc) != '\0') {\n          (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n          (*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c);\n          (*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c);\n          (*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c);\n          zSql_00 = (int *)(iVar10 + 0x5c88);\n          piVar14 = piStack_118;\n          iVar12 = iStack_114;\n          if (ppStmt == psVar20) goto joined_r0x000f7930;\n        }\n        piVar14 = piStack_118;\n        iVar12 = iStack_114;\n      } while (ppStmt != psVar20);\n    }" { (expression_statement "iVar3 = *(int *)(pcVar21 + 0x6404c);" (assignment_expression "iVar3 = *(int *)(pcVar21 + 0x6404c)" identifier = (pointer_expression "*(int *)(pcVar21 + 0x6404c)" * (cast_expression "(int *)(pcVar21 + 0x6404c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x6404c)" ( (binary_expression "pcVar21 + 0x6404c" identifier + number_literal) ))))) ;) (expression_statement "psVar20 = (sqlite3_vtab_cursor *)0x0;" (assignment_expression "psVar20 = (sqlite3_vtab_cursor *)0x0" identifier = (cast_expression "(sqlite3_vtab_cursor *)0x0" ( (type_descriptor "sqlite3_vtab_cursor *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar10 = *(int *)(pcVar21 + 0x63f18);" (assignment_expression "iVar10 = *(int *)(pcVar21 + 0x63f18)" identifier = (pointer_expression "*(int *)(pcVar21 + 0x63f18)" * (cast_expression "(int *)(pcVar21 + 0x63f18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x63f18)" ( (binary_expression "pcVar21 + 0x63f18" identifier + number_literal) ))))) ;) (expression_statement "iVar17 = *(int *)(pcVar21 + 0x63f2c);" (assignment_expression "iVar17 = *(int *)(pcVar21 + 0x63f2c)" identifier = (pointer_expression "*(int *)(pcVar21 + 0x63f2c)" * (cast_expression "(int *)(pcVar21 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x63f2c)" ( (binary_expression "pcVar21 + 0x63f2c" identifier + number_literal) ))))) ;) (expression_statement "zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x53f4);" (assignment_expression "zSql_00 = (int *)(*(int *)(pcVar21 + 0x63f18) + 0x53f4)" identifier = (cast_expression "(int *)(*(int *)(pcVar21 + 0x63f18) + 0x53f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar21 + 0x63f18) + 0x53f4)" ( (binary_expression "*(int *)(pcVar21 + 0x63f18) + 0x53f4" (pointer_expression "*(int *)(pcVar21 + 0x63f18)" * (cast_expression "(int *)(pcVar21 + 0x63f18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar21 + 0x63f18)" ( (binary_expression "pcVar21 + 0x63f18" identifier + number_literal) )))) + number_literal) )))) ;) (do_statement "do {\n        while (ppsVar1 = &psVar20->pVtab,\n              psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),\n              *(char *)((int)ppsVar1 + iStack_cc) != '\0') {\n          (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n          (*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c);\n          (*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c);\n          (*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c);\n          zSql_00 = (int *)(iVar10 + 0x5c88);\n          piVar14 = piStack_118;\n          iVar12 = iStack_114;\n          if (ppStmt == psVar20) goto joined_r0x000f7930;\n        }\n        piVar14 = piStack_118;\n        iVar12 = iStack_114;\n      } while (ppStmt != psVar20);" do (compound_statement "{\n        while (ppsVar1 = &psVar20->pVtab,\n              psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),\n              *(char *)((int)ppsVar1 + iStack_cc) != '\0') {\n          (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n          (*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c);\n          (*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c);\n          (*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c);\n          zSql_00 = (int *)(iVar10 + 0x5c88);\n          piVar14 = piStack_118;\n          iVar12 = iStack_114;\n          if (ppStmt == psVar20) goto joined_r0x000f7930;\n        }\n        piVar14 = piStack_118;\n        iVar12 = iStack_114;\n      }" { (while_statement "while (ppsVar1 = &psVar20->pVtab,\n              psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),\n              *(char *)((int)ppsVar1 + iStack_cc) != '\0') {\n          (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n          (*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c);\n          (*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c);\n          (*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c);\n          zSql_00 = (int *)(iVar10 + 0x5c88);\n          piVar14 = piStack_118;\n          iVar12 = iStack_114;\n          if (ppStmt == psVar20) goto joined_r0x000f7930;\n        }" while (parenthesized_expression "(ppsVar1 = &psVar20->pVtab,\n              psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),\n              *(char *)((int)ppsVar1 + iStack_cc) != '\0')" ( (comma_expression "ppsVar1 = &psVar20->pVtab,\n              psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),\n              *(char *)((int)ppsVar1 + iStack_cc) != '\0'" (assignment_expression "ppsVar1 = &psVar20->pVtab" identifier = (pointer_expression "&psVar20->pVtab" & (field_expression "psVar20->pVtab" identifier -> field_identifier))) , (comma_expression "psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1),\n              *(char *)((int)ppsVar1 + iStack_cc) != '\0'" (assignment_expression "psVar20 = (sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1)" identifier = (cast_expression "(sqlite3_vtab_cursor *)((int)&psVar20->pVtab + 1)" ( (type_descriptor "sqlite3_vtab_cursor *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psVar20->pVtab + 1)" ( (binary_expression "(int)&psVar20->pVtab + 1" (cast_expression "(int)&psVar20->pVtab" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar20->pVtab" & (field_expression "psVar20->pVtab" identifier -> field_identifier))) + number_literal) )))) , (binary_expression "*(char *)((int)ppsVar1 + iStack_cc) != '\0'" (pointer_expression "*(char *)((int)ppsVar1 + iStack_cc)" * (cast_expression "(char *)((int)ppsVar1 + iStack_cc)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppsVar1 + iStack_cc)" ( (binary_expression "(int)ppsVar1 + iStack_cc" (cast_expression "(int)ppsVar1" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) != (char_literal "'\0'" ' escape_sequence ')))) )) (compound_statement "{\n          (*pcVar22)(&piStack_118,zSql_00,&iStack_11c);\n          (*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c);\n          (*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c);\n          (*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c);\n          zSql_00 = (int *)(iVar10 + 0x5c88);\n          piVar14 = piStack_118;\n          iVar12 = iStack_114;\n          if (ppStmt == psVar20) goto joined_r0x000f7930;\n        }" { (expression_statement "(*pcVar22)(&piStack_118,zSql_00,&iStack_11c);" (call_expression "(*pcVar22)(&piStack_118,zSql_00,&iStack_11c)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(&piStack_118,zSql_00,&iStack_11c)" ( (pointer_expression "&piStack_118" & identifier) , identifier , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c);" (call_expression "(*pcVar19)(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c)" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "(&piStack_118,*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4),\n                     &iStack_11c)" ( (pointer_expression "&piStack_118" & identifier) , (pointer_expression "*(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4)" * (cast_expression "(undefined4 *)(in_stack_ffffff30 + (int)psVar20 * 4 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_stack_ffffff30 + (int)psVar20 * 4 + -4)" ( (binary_expression "in_stack_ffffff30 + (int)psVar20 * 4 + -4" (binary_expression "in_stack_ffffff30 + (int)psVar20 * 4" identifier + (binary_expression "(int)psVar20 * 4" (cast_expression "(int)psVar20" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) + number_literal) )))) , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c);" (call_expression "(*pcVar22)(&piStack_118,iVar17 + -0x5278,&iStack_11c)" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "(&piStack_118,iVar17 + -0x5278,&iStack_11c)" ( (pointer_expression "&piStack_118" & identifier) , (binary_expression "iVar17 + -0x5278" identifier + number_literal) , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c);" (call_expression "(*(code *)(iVar3 + -0x1b0c))(&piStack_118,psVar20,&iStack_11c)" (parenthesized_expression "(*(code *)(iVar3 + -0x1b0c))" ( (pointer_expression "*(code *)(iVar3 + -0x1b0c)" * (cast_expression "(code *)(iVar3 + -0x1b0c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar3 + -0x1b0c)" ( (binary_expression "iVar3 + -0x1b0c" identifier + number_literal) )))) )) (argument_list "(&piStack_118,psVar20,&iStack_11c)" ( (pointer_expression "&piStack_118" & identifier) , identifier , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "zSql_00 = (int *)(iVar10 + 0x5c88);" (assignment_expression "zSql_00 = (int *)(iVar10 + 0x5c88)" identifier = (cast_expression "(int *)(iVar10 + 0x5c88)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + 0x5c88)" ( (binary_expression "iVar10 + 0x5c88" identifier + number_literal) )))) ;) (expression_statement "piVar14 = piStack_118;" (assignment_expression "piVar14 = piStack_118" identifier = identifier) ;) (expression_statement "iVar12 = iStack_114;" (assignment_expression "iVar12 = iStack_114" identifier = identifier) ;) (if_statement "if (ppStmt == psVar20) goto joined_r0x000f7930;" if (parenthesized_expression "(ppStmt == psVar20)" ( (binary_expression "ppStmt == psVar20" identifier == identifier) )) (goto_statement "goto joined_r0x000f7930;" goto statement_identifier ;)) })) (expression_statement "piVar14 = piStack_118;" (assignment_expression "piVar14 = piStack_118" identifier = identifier) ;) (expression_statement "iVar12 = iStack_114;" (assignment_expression "iVar12 = iStack_114" identifier = identifier) ;) }) while (parenthesized_expression "(ppStmt != psVar20)" ( (binary_expression "ppStmt != psVar20" identifier != identifier) )) ;) })) }))) (labeled_statement "joined_r0x000f7930:\n  if (iStack_11c == 0) {\n    in_stack_fffffeb8 = (sqlite3_stmt **)0x0;\n    zSql_00 = piVar14;\n    iStack_11c = sqlite3_prepare_v2(psVar9,(char *)piVar14,iVar12,(sqlite3_stmt **)ppStmt_00,\n                                    (char **)0x0);\n    psVar11 = ppStmt_00;\n  }" statement_identifier : (if_statement "if (iStack_11c == 0) {\n    in_stack_fffffeb8 = (sqlite3_stmt **)0x0;\n    zSql_00 = piVar14;\n    iStack_11c = sqlite3_prepare_v2(psVar9,(char *)piVar14,iVar12,(sqlite3_stmt **)ppStmt_00,\n                                    (char **)0x0);\n    psVar11 = ppStmt_00;\n  }" if (parenthesized_expression "(iStack_11c == 0)" ( (binary_expression "iStack_11c == 0" identifier == number_literal) )) (compound_statement "{\n    in_stack_fffffeb8 = (sqlite3_stmt **)0x0;\n    zSql_00 = piVar14;\n    iStack_11c = sqlite3_prepare_v2(psVar9,(char *)piVar14,iVar12,(sqlite3_stmt **)ppStmt_00,\n                                    (char **)0x0);\n    psVar11 = ppStmt_00;\n  }" { (expression_statement "in_stack_fffffeb8 = (sqlite3_stmt **)0x0;" (assignment_expression "in_stack_fffffeb8 = (sqlite3_stmt **)0x0" identifier = (cast_expression "(sqlite3_stmt **)0x0" ( (type_descriptor "sqlite3_stmt **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "zSql_00 = piVar14;" (assignment_expression "zSql_00 = piVar14" identifier = identifier) ;) (expression_statement "iStack_11c = sqlite3_prepare_v2(psVar9,(char *)piVar14,iVar12,(sqlite3_stmt **)ppStmt_00,\n                                    (char **)0x0);" (assignment_expression "iStack_11c = sqlite3_prepare_v2(psVar9,(char *)piVar14,iVar12,(sqlite3_stmt **)ppStmt_00,\n                                    (char **)0x0)" identifier = (call_expression "sqlite3_prepare_v2(psVar9,(char *)piVar14,iVar12,(sqlite3_stmt **)ppStmt_00,\n                                    (char **)0x0)" identifier (argument_list "(psVar9,(char *)piVar14,iVar12,(sqlite3_stmt **)ppStmt_00,\n                                    (char **)0x0)" ( identifier , (cast_expression "(char *)piVar14" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier , (cast_expression "(sqlite3_stmt **)ppStmt_00" ( (type_descriptor "sqlite3_stmt **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) , (cast_expression "(char **)0x0" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal) )))) ;) (expression_statement "psVar11 = ppStmt_00;" (assignment_expression "psVar11 = ppStmt_00" identifier = identifier) ;) }))) (labeled_statement "LAB_000f778c:\n  (**(code **)(pcVar21 + 0x63f50))(piVar14);" statement_identifier : (expression_statement "(**(code **)(pcVar21 + 0x63f50))(piVar14);" (call_expression "(**(code **)(pcVar21 + 0x63f50))(piVar14)" (parenthesized_expression "(**(code **)(pcVar21 + 0x63f50))" ( (pointer_expression "**(code **)(pcVar21 + 0x63f50)" * (pointer_expression "*(code **)(pcVar21 + 0x63f50)" * (cast_expression "(code **)(pcVar21 + 0x63f50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x63f50)" ( (binary_expression "pcVar21 + 0x63f50" identifier + number_literal) ))))) )) (argument_list "(piVar14)" ( identifier ))) ;)) (if_statement "if (psStack_10c == (sqlite3 *)*piVar16) {\n    return iStack_11c;\n  }" if (parenthesized_expression "(psStack_10c == (sqlite3 *)*piVar16)" ( (binary_expression "psStack_10c == (sqlite3 *)*piVar16" identifier == (cast_expression "(sqlite3 *)*piVar16" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar16" * identifier))) )) (compound_statement "{\n    return iStack_11c;\n  }" { (return_statement "return iStack_11c;" return identifier ;) })) (expression_statement "psVar9 = psStack_10c;" (assignment_expression "psVar9 = psStack_10c" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar21 + 0x64340))();" (call_expression "(**(code **)(pcVar21 + 0x64340))()" (parenthesized_expression "(**(code **)(pcVar21 + 0x64340))" ( (pointer_expression "**(code **)(pcVar21 + 0x64340)" * (pointer_expression "*(code **)(pcVar21 + 0x64340)" * (cast_expression "(code **)(pcVar21 + 0x64340)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar21 + 0x64340)" ( (binary_expression "pcVar21 + 0x64340" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar12 = sqlite3LockAndPrepare\n                     (psVar9,(char *)zSql_00,iVar12,(uint)psVar11 & 0xf | 0x80,(Vdbe *)0x0,\n                      in_stack_fffffeb8,ppcStack_144);" (assignment_expression "iVar12 = sqlite3LockAndPrepare\n                     (psVar9,(char *)zSql_00,iVar12,(uint)psVar11 & 0xf | 0x80,(Vdbe *)0x0,\n                      in_stack_fffffeb8,ppcStack_144)" identifier = (call_expression "sqlite3LockAndPrepare\n                     (psVar9,(char *)zSql_00,iVar12,(uint)psVar11 & 0xf | 0x80,(Vdbe *)0x0,\n                      in_stack_fffffeb8,ppcStack_144)" identifier (argument_list "(psVar9,(char *)zSql_00,iVar12,(uint)psVar11 & 0xf | 0x80,(Vdbe *)0x0,\n                      in_stack_fffffeb8,ppcStack_144)" ( identifier , (cast_expression "(char *)zSql_00" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier , (binary_expression "(uint)psVar11 & 0xf | 0x80" (binary_expression "(uint)psVar11 & 0xf" (cast_expression "(uint)psVar11" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) | number_literal) , (cast_expression "(Vdbe *)0x0" ( (type_descriptor "Vdbe *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , identifier , identifier )))) ;) (return_statement "return iVar12;" return identifier ;) })))
(translation_unit "int FUN_000f7210(int *param_1,undefined4 param_2,undefined4 param_3,int *param_4,undefined4 *param_5\n                )\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined *puVar4;\n  int *piVar5;\n  undefined4 *puVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 *puVar9;\n  int iVar10;\n  undefined4 *puVar11;\n  undefined4 uVar12;\n  int *piVar13;\n  int *piVar14;\n  code *pcVar15;\n  int iVar16;\n  int iVar17;\n  undefined *unaff_s6;\n  int iVar18;\n  code *pcVar19;\n  code *pcVar20;\n  undefined4 uVar21;\n  code *pcVar22;\n  int iStack_11c;\n  int iStack_118;\n  undefined4 uStack_114;\n  undefined4 uStack_110;\n  int iStack_10c;\n  int *piStack_108;\n  undefined4 *puStack_104;\n  undefined4 *puStack_100;\n  undefined *puStack_fc;\n  undefined *puStack_f8;\n  int *piStack_f4;\n  undefined *puStack_f0;\n  int iStack_d0;\n  int iStack_cc;\n  int iStack_b8;\n  int iStack_b4;\n  int iStack_b0;\n  int iStack_ac;\n  int *piStack_a8;\n  code *pcStack_a4;\n  undefined4 uStack_98;\n  int *piStack_94;\n  undefined4 local_90;\n  undefined *local_88;\n  int local_80;\n  undefined4 *local_7c;\n  int local_74;\n  undefined4 *local_70;\n  int *local_6c;\n  int local_68;\n  undefined4 local_64;\n  undefined4 local_50;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  undefined2 local_28;\n  int local_24;\n  \n  puVar1 = PTR___stack_chk_guard_0015ba2c;\n  iVar16 = *param_1;\n  local_24 = *(int *)PTR___stack_chk_guard_0015ba2c;\n  piVar5 = param_4;\n  (*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();\n  piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f);\n  if (0 < (int)param_4) {\n    param_4 = (int *)((int)param_4 + (int)piVar13);\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);\n  }\n  local_28 = 0;\n  local_38 = 0;\n  local_3c = 0;\n  local_34 = 0;\n  local_2c = 0;\n  local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360);\n  if (param_1[5] != 0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);\n  }\n  puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c);\n  if (param_1[4] != 0) {\n    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);\n  }\n  puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c);\n  if (puVar4 == (undefined *)0x0) {\nLAB_000f7410:\n    iVar3 = 7;\n  }\n  else {\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }\n  if (local_24 == *(int *)puVar1) {\n    return iVar3;\n  }\n  uVar21 = 0xf7454;\n  iVar8 = local_24;\n  puVar4 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_88 = puVar4 + 0x6c15c;\n  piVar13 = *(int **)(puVar4 + 0x645d8);\n  uVar12 = *(undefined4 *)(iVar8 + 0x24);\n  iVar10 = *(int *)(iVar8 + 0x20);\n  local_7c = (undefined4 *)*piVar13;\n  local_80 = 0;\n  local_74 = iVar3;\n  local_70 = param_5;\n  local_6c = param_1;\n  local_68 = iVar16;\n  local_64 = uVar21;\n  iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10);\n  if (iVar16 == 0) {\n    iVar3 = 7;\n    (**(code **)(local_88 + -0x7f90))(0);\nLAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  else {\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  if (local_7c == (undefined4 *)*piVar13) {\n    return iVar3;\n  }\n  pcVar19 = *(code **)(local_88 + -0x7ba0);\n  pcVar22 = FUN_000f75ec;\n  puVar9 = local_7c;\n  (*pcVar19)();\n  puVar11 = &uStack_98;\n  piVar14 = *(int **)(pcVar19 + 0x64440);\n  iStack_b8 = 0;\n  iStack_b4 = *piVar14;\n  iStack_b0 = iVar8;\n  iStack_ac = iVar3;\n  piStack_a8 = piVar13;\n  pcStack_a4 = pcVar22;\n  uStack_98 = uVar12;\n  piStack_94 = piVar5;\n  puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11);\n  if (puVar9[10] == 0) {\n    if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }\n  }\n  (**(code **)(pcVar19 + 0x64034))(puVar6);\n  if (iStack_b4 == *piVar14) {\n    return iStack_b8;\n  }\n  pcVar22 = *(code **)(pcVar19 + 0x64424);\n  iVar16 = iStack_b4;\n  (*pcVar22)();\n  puStack_f8 = puVar1;\n  piVar13 = *(int **)(pcVar22 + 0x6435c);\n  iStack_11c = 0;\n  iStack_10c = *piVar13;\n  piStack_108 = piVar14;\n  puStack_104 = puVar6;\n  puStack_100 = puVar9;\n  puStack_fc = puVar2;\n  piStack_f4 = param_4;\n  puStack_f0 = unaff_s6;\n  iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);\n    if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    uVar12 = 0xffffffff;\n  }\n  else {\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }\njoined_r0x000f7930:\n  if (iStack_11c == 0) {\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }\nLAB_000f778c:\n  (**(code **)(pcVar22 + 0x63f50))(iVar3);\n  if (iStack_10c == *piVar13) {\n    return iStack_11c;\n  }\n  (**(code **)(pcVar22 + 0x64340))();\n  iVar16 = FUN_000f6c34();\n  return iVar16;\n}\n\n" (function_definition "int FUN_000f7210(int *param_1,undefined4 param_2,undefined4 param_3,int *param_4,undefined4 *param_5\n                )\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined *puVar4;\n  int *piVar5;\n  undefined4 *puVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 *puVar9;\n  int iVar10;\n  undefined4 *puVar11;\n  undefined4 uVar12;\n  int *piVar13;\n  int *piVar14;\n  code *pcVar15;\n  int iVar16;\n  int iVar17;\n  undefined *unaff_s6;\n  int iVar18;\n  code *pcVar19;\n  code *pcVar20;\n  undefined4 uVar21;\n  code *pcVar22;\n  int iStack_11c;\n  int iStack_118;\n  undefined4 uStack_114;\n  undefined4 uStack_110;\n  int iStack_10c;\n  int *piStack_108;\n  undefined4 *puStack_104;\n  undefined4 *puStack_100;\n  undefined *puStack_fc;\n  undefined *puStack_f8;\n  int *piStack_f4;\n  undefined *puStack_f0;\n  int iStack_d0;\n  int iStack_cc;\n  int iStack_b8;\n  int iStack_b4;\n  int iStack_b0;\n  int iStack_ac;\n  int *piStack_a8;\n  code *pcStack_a4;\n  undefined4 uStack_98;\n  int *piStack_94;\n  undefined4 local_90;\n  undefined *local_88;\n  int local_80;\n  undefined4 *local_7c;\n  int local_74;\n  undefined4 *local_70;\n  int *local_6c;\n  int local_68;\n  undefined4 local_64;\n  undefined4 local_50;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  undefined2 local_28;\n  int local_24;\n  \n  puVar1 = PTR___stack_chk_guard_0015ba2c;\n  iVar16 = *param_1;\n  local_24 = *(int *)PTR___stack_chk_guard_0015ba2c;\n  piVar5 = param_4;\n  (*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();\n  piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f);\n  if (0 < (int)param_4) {\n    param_4 = (int *)((int)param_4 + (int)piVar13);\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);\n  }\n  local_28 = 0;\n  local_38 = 0;\n  local_3c = 0;\n  local_34 = 0;\n  local_2c = 0;\n  local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360);\n  if (param_1[5] != 0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);\n  }\n  puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c);\n  if (param_1[4] != 0) {\n    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);\n  }\n  puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c);\n  if (puVar4 == (undefined *)0x0) {\nLAB_000f7410:\n    iVar3 = 7;\n  }\n  else {\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }\n  if (local_24 == *(int *)puVar1) {\n    return iVar3;\n  }\n  uVar21 = 0xf7454;\n  iVar8 = local_24;\n  puVar4 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_88 = puVar4 + 0x6c15c;\n  piVar13 = *(int **)(puVar4 + 0x645d8);\n  uVar12 = *(undefined4 *)(iVar8 + 0x24);\n  iVar10 = *(int *)(iVar8 + 0x20);\n  local_7c = (undefined4 *)*piVar13;\n  local_80 = 0;\n  local_74 = iVar3;\n  local_70 = param_5;\n  local_6c = param_1;\n  local_68 = iVar16;\n  local_64 = uVar21;\n  iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10);\n  if (iVar16 == 0) {\n    iVar3 = 7;\n    (**(code **)(local_88 + -0x7f90))(0);\nLAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  else {\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  if (local_7c == (undefined4 *)*piVar13) {\n    return iVar3;\n  }\n  pcVar19 = *(code **)(local_88 + -0x7ba0);\n  pcVar22 = FUN_000f75ec;\n  puVar9 = local_7c;\n  (*pcVar19)();\n  puVar11 = &uStack_98;\n  piVar14 = *(int **)(pcVar19 + 0x64440);\n  iStack_b8 = 0;\n  iStack_b4 = *piVar14;\n  iStack_b0 = iVar8;\n  iStack_ac = iVar3;\n  piStack_a8 = piVar13;\n  pcStack_a4 = pcVar22;\n  uStack_98 = uVar12;\n  piStack_94 = piVar5;\n  puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11);\n  if (puVar9[10] == 0) {\n    if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }\n  }\n  (**(code **)(pcVar19 + 0x64034))(puVar6);\n  if (iStack_b4 == *piVar14) {\n    return iStack_b8;\n  }\n  pcVar22 = *(code **)(pcVar19 + 0x64424);\n  iVar16 = iStack_b4;\n  (*pcVar22)();\n  puStack_f8 = puVar1;\n  piVar13 = *(int **)(pcVar22 + 0x6435c);\n  iStack_11c = 0;\n  iStack_10c = *piVar13;\n  piStack_108 = piVar14;\n  puStack_104 = puVar6;\n  puStack_100 = puVar9;\n  puStack_fc = puVar2;\n  piStack_f4 = param_4;\n  puStack_f0 = unaff_s6;\n  iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);\n    if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    uVar12 = 0xffffffff;\n  }\n  else {\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }\njoined_r0x000f7930:\n  if (iStack_11c == 0) {\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }\nLAB_000f778c:\n  (**(code **)(pcVar22 + 0x63f50))(iVar3);\n  if (iStack_10c == *piVar13) {\n    return iStack_11c;\n  }\n  (**(code **)(pcVar22 + 0x64340))();\n  iVar16 = FUN_000f6c34();\n  return iVar16;\n}" primitive_type (function_declarator "FUN_000f7210(int *param_1,undefined4 param_2,undefined4 param_3,int *param_4,undefined4 *param_5\n                )" identifier (parameter_list "(int *param_1,undefined4 param_2,undefined4 param_3,int *param_4,undefined4 *param_5\n                )" ( (parameter_declaration "int *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "int *param_4" primitive_type (pointer_declarator "*param_4" * identifier)) , (parameter_declaration "undefined4 *param_5" type_identifier (pointer_declarator "*param_5" * identifier)) ))) (compound_statement "{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined *puVar4;\n  int *piVar5;\n  undefined4 *puVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 *puVar9;\n  int iVar10;\n  undefined4 *puVar11;\n  undefined4 uVar12;\n  int *piVar13;\n  int *piVar14;\n  code *pcVar15;\n  int iVar16;\n  int iVar17;\n  undefined *unaff_s6;\n  int iVar18;\n  code *pcVar19;\n  code *pcVar20;\n  undefined4 uVar21;\n  code *pcVar22;\n  int iStack_11c;\n  int iStack_118;\n  undefined4 uStack_114;\n  undefined4 uStack_110;\n  int iStack_10c;\n  int *piStack_108;\n  undefined4 *puStack_104;\n  undefined4 *puStack_100;\n  undefined *puStack_fc;\n  undefined *puStack_f8;\n  int *piStack_f4;\n  undefined *puStack_f0;\n  int iStack_d0;\n  int iStack_cc;\n  int iStack_b8;\n  int iStack_b4;\n  int iStack_b0;\n  int iStack_ac;\n  int *piStack_a8;\n  code *pcStack_a4;\n  undefined4 uStack_98;\n  int *piStack_94;\n  undefined4 local_90;\n  undefined *local_88;\n  int local_80;\n  undefined4 *local_7c;\n  int local_74;\n  undefined4 *local_70;\n  int *local_6c;\n  int local_68;\n  undefined4 local_64;\n  undefined4 local_50;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  undefined2 local_28;\n  int local_24;\n  \n  puVar1 = PTR___stack_chk_guard_0015ba2c;\n  iVar16 = *param_1;\n  local_24 = *(int *)PTR___stack_chk_guard_0015ba2c;\n  piVar5 = param_4;\n  (*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();\n  piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f);\n  if (0 < (int)param_4) {\n    param_4 = (int *)((int)param_4 + (int)piVar13);\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);\n  }\n  local_28 = 0;\n  local_38 = 0;\n  local_3c = 0;\n  local_34 = 0;\n  local_2c = 0;\n  local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360);\n  if (param_1[5] != 0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);\n  }\n  puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c);\n  if (param_1[4] != 0) {\n    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);\n  }\n  puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c);\n  if (puVar4 == (undefined *)0x0) {\nLAB_000f7410:\n    iVar3 = 7;\n  }\n  else {\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }\n  if (local_24 == *(int *)puVar1) {\n    return iVar3;\n  }\n  uVar21 = 0xf7454;\n  iVar8 = local_24;\n  puVar4 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_88 = puVar4 + 0x6c15c;\n  piVar13 = *(int **)(puVar4 + 0x645d8);\n  uVar12 = *(undefined4 *)(iVar8 + 0x24);\n  iVar10 = *(int *)(iVar8 + 0x20);\n  local_7c = (undefined4 *)*piVar13;\n  local_80 = 0;\n  local_74 = iVar3;\n  local_70 = param_5;\n  local_6c = param_1;\n  local_68 = iVar16;\n  local_64 = uVar21;\n  iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10);\n  if (iVar16 == 0) {\n    iVar3 = 7;\n    (**(code **)(local_88 + -0x7f90))(0);\nLAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  else {\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  if (local_7c == (undefined4 *)*piVar13) {\n    return iVar3;\n  }\n  pcVar19 = *(code **)(local_88 + -0x7ba0);\n  pcVar22 = FUN_000f75ec;\n  puVar9 = local_7c;\n  (*pcVar19)();\n  puVar11 = &uStack_98;\n  piVar14 = *(int **)(pcVar19 + 0x64440);\n  iStack_b8 = 0;\n  iStack_b4 = *piVar14;\n  iStack_b0 = iVar8;\n  iStack_ac = iVar3;\n  piStack_a8 = piVar13;\n  pcStack_a4 = pcVar22;\n  uStack_98 = uVar12;\n  piStack_94 = piVar5;\n  puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11);\n  if (puVar9[10] == 0) {\n    if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }\n  }\n  (**(code **)(pcVar19 + 0x64034))(puVar6);\n  if (iStack_b4 == *piVar14) {\n    return iStack_b8;\n  }\n  pcVar22 = *(code **)(pcVar19 + 0x64424);\n  iVar16 = iStack_b4;\n  (*pcVar22)();\n  puStack_f8 = puVar1;\n  piVar13 = *(int **)(pcVar22 + 0x6435c);\n  iStack_11c = 0;\n  iStack_10c = *piVar13;\n  piStack_108 = piVar14;\n  puStack_104 = puVar6;\n  puStack_100 = puVar9;\n  puStack_fc = puVar2;\n  piStack_f4 = param_4;\n  puStack_f0 = unaff_s6;\n  iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);\n    if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    uVar12 = 0xffffffff;\n  }\n  else {\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }\njoined_r0x000f7930:\n  if (iStack_11c == 0) {\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }\nLAB_000f778c:\n  (**(code **)(pcVar22 + 0x63f50))(iVar3);\n  if (iStack_10c == *piVar13) {\n    return iStack_11c;\n  }\n  (**(code **)(pcVar22 + 0x64340))();\n  iVar16 = FUN_000f6c34();\n  return iVar16;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "undefined *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "undefined4 *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "undefined4 *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined4 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "int *piVar13;" primitive_type (pointer_declarator "*piVar13" * identifier) ;) (declaration "int *piVar14;" primitive_type (pointer_declarator "*piVar14" * identifier) ;) (declaration "code *pcVar15;" type_identifier (pointer_declarator "*pcVar15" * identifier) ;) (declaration "int iVar16;" primitive_type identifier ;) (declaration "int iVar17;" primitive_type identifier ;) (declaration "undefined *unaff_s6;" type_identifier (pointer_declarator "*unaff_s6" * identifier) ;) (declaration "int iVar18;" primitive_type identifier ;) (declaration "code *pcVar19;" type_identifier (pointer_declarator "*pcVar19" * identifier) ;) (declaration "code *pcVar20;" type_identifier (pointer_declarator "*pcVar20" * identifier) ;) (declaration "undefined4 uVar21;" type_identifier identifier ;) (declaration "code *pcVar22;" type_identifier (pointer_declarator "*pcVar22" * identifier) ;) (declaration "int iStack_11c;" primitive_type identifier ;) (declaration "int iStack_118;" primitive_type identifier ;) (declaration "undefined4 uStack_114;" type_identifier identifier ;) (declaration "undefined4 uStack_110;" type_identifier identifier ;) (declaration "int iStack_10c;" primitive_type identifier ;) (declaration "int *piStack_108;" primitive_type (pointer_declarator "*piStack_108" * identifier) ;) (declaration "undefined4 *puStack_104;" type_identifier (pointer_declarator "*puStack_104" * identifier) ;) (declaration "undefined4 *puStack_100;" type_identifier (pointer_declarator "*puStack_100" * identifier) ;) (declaration "undefined *puStack_fc;" type_identifier (pointer_declarator "*puStack_fc" * identifier) ;) (declaration "undefined *puStack_f8;" type_identifier (pointer_declarator "*puStack_f8" * identifier) ;) (declaration "int *piStack_f4;" primitive_type (pointer_declarator "*piStack_f4" * identifier) ;) (declaration "undefined *puStack_f0;" type_identifier (pointer_declarator "*puStack_f0" * identifier) ;) (declaration "int iStack_d0;" primitive_type identifier ;) (declaration "int iStack_cc;" primitive_type identifier ;) (declaration "int iStack_b8;" primitive_type identifier ;) (declaration "int iStack_b4;" primitive_type identifier ;) (declaration "int iStack_b0;" primitive_type identifier ;) (declaration "int iStack_ac;" primitive_type identifier ;) (declaration "int *piStack_a8;" primitive_type (pointer_declarator "*piStack_a8" * identifier) ;) (declaration "code *pcStack_a4;" type_identifier (pointer_declarator "*pcStack_a4" * identifier) ;) (declaration "undefined4 uStack_98;" type_identifier identifier ;) (declaration "int *piStack_94;" primitive_type (pointer_declarator "*piStack_94" * identifier) ;) (declaration "undefined4 local_90;" type_identifier identifier ;) (declaration "undefined *local_88;" type_identifier (pointer_declarator "*local_88" * identifier) ;) (declaration "int local_80;" primitive_type identifier ;) (declaration "undefined4 *local_7c;" type_identifier (pointer_declarator "*local_7c" * identifier) ;) (declaration "int local_74;" primitive_type identifier ;) (declaration "undefined4 *local_70;" type_identifier (pointer_declarator "*local_70" * identifier) ;) (declaration "int *local_6c;" primitive_type (pointer_declarator "*local_6c" * identifier) ;) (declaration "int local_68;" primitive_type identifier ;) (declaration "undefined4 local_64;" type_identifier identifier ;) (declaration "undefined4 local_50;" type_identifier identifier ;) (declaration "undefined4 local_3c;" type_identifier identifier ;) (declaration "undefined4 local_38;" type_identifier identifier ;) (declaration "undefined4 local_34;" type_identifier identifier ;) (declaration "undefined4 local_30;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (declaration "undefined2 local_28;" type_identifier identifier ;) (declaration "int local_24;" primitive_type identifier ;) (expression_statement "puVar1 = PTR___stack_chk_guard_0015ba2c;" (assignment_expression "puVar1 = PTR___stack_chk_guard_0015ba2c" identifier = identifier) ;) (expression_statement "iVar16 = *param_1;" (assignment_expression "iVar16 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (expression_statement "local_24 = *(int *)PTR___stack_chk_guard_0015ba2c;" (assignment_expression "local_24 = *(int *)PTR___stack_chk_guard_0015ba2c" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0015ba2c" * (cast_expression "(int *)PTR___stack_chk_guard_0015ba2c" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "piVar5 = param_4;" (assignment_expression "piVar5 = param_4" identifier = identifier) ;) (expression_statement "(*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();" (call_expression "(*(code *)(PTR_LAB_0015b6f8 + 0x1b68))()" (parenthesized_expression "(*(code *)(PTR_LAB_0015b6f8 + 0x1b68))" ( (pointer_expression "*(code *)(PTR_LAB_0015b6f8 + 0x1b68)" * (cast_expression "(code *)(PTR_LAB_0015b6f8 + 0x1b68)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0015b6f8 + 0x1b68)" ( (binary_expression "PTR_LAB_0015b6f8 + 0x1b68" identifier + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f);" (assignment_expression "piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f)" identifier = (cast_expression "(int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (unary_expression "-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f)" - (parenthesized_expression "((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f)" ( (binary_expression "(int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f" (cast_expression "(int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a)" ( (binary_expression "(*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a" (parenthesized_expression "(*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20)" ( (binary_expression "*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20" (pointer_expression "*(byte *)(*(int *)(iVar16 + 0x10) + 5)" * (cast_expression "(byte *)(*(int *)(iVar16 + 0x10) + 5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar16 + 0x10) + 5)" ( (binary_expression "*(int *)(iVar16 + 0x10) + 5" (pointer_expression "*(int *)(iVar16 + 0x10)" * (cast_expression "(int *)(iVar16 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0x10)" ( (binary_expression "iVar16 + 0x10" identifier + number_literal) )))) + number_literal) )))) ^ number_literal) )) << number_literal) ))) >> number_literal) ))))) ;) (if_statement "if (0 < (int)param_4) {\n    param_4 = (int *)((int)param_4 + (int)piVar13);\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);\n  }" if (parenthesized_expression "(0 < (int)param_4)" ( (binary_expression "0 < (int)param_4" number_literal < (cast_expression "(int)param_4" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n    param_4 = (int *)((int)param_4 + (int)piVar13);\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);\n  }" { (expression_statement "param_4 = (int *)((int)param_4 + (int)piVar13);" (assignment_expression "param_4 = (int *)((int)param_4 + (int)piVar13)" identifier = (cast_expression "(int *)((int)param_4 + (int)piVar13)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_4 + (int)piVar13)" ( (binary_expression "(int)param_4 + (int)piVar13" (cast_expression "(int)param_4" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)piVar13" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;" (assignment_expression "unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4" identifier = (binary_expression "PTR_LAB_0015b5e8 + 0x71f4" identifier + number_literal)) ;) (do_statement "do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);" do (compound_statement "{\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    }" { (expression_statement "puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);" (assignment_expression "puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5)" identifier = (cast_expression "(undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5)" (parenthesized_expression "(*(code *)PTR_sqlite3_value_text_0015b614)" ( (pointer_expression "*(code *)PTR_sqlite3_value_text_0015b614" * (cast_expression "(code *)PTR_sqlite3_value_text_0015b614" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*param_5)" ( (pointer_expression "*param_5" * identifier) ))))) ;) (if_statement "if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }" if (parenthesized_expression "(puVar2 != (undefined *)0x0)" ( (binary_expression "puVar2 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }" { (expression_statement "iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);" (assignment_expression "iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6)" identifier = (call_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6)" (parenthesized_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)" ( (pointer_expression "*(code *)PTR_sqlite3_mprintf_0015b628" * (cast_expression "(code *)PTR_sqlite3_mprintf_0015b628" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s6)" ( identifier )))) ;) (expression_statement "param_1[(int)(piVar13 + 1)] = iVar3;" (assignment_expression "param_1[(int)(piVar13 + 1)] = iVar3" (subscript_expression "param_1[(int)(piVar13 + 1)]" identifier [ (cast_expression "(int)(piVar13 + 1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(piVar13 + 1)" ( (binary_expression "piVar13 + 1" identifier + number_literal) ))) ]) = identifier) ;) (if_statement "if (iVar3 == 0) goto LAB_000f7410;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000f7410;" goto statement_identifier ;)) })) (expression_statement "piVar13 = (int *)((int)piVar13 + 1);" (assignment_expression "piVar13 = (int *)((int)piVar13 + 1)" identifier = (cast_expression "(int *)((int)piVar13 + 1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar13 + 1)" ( (binary_expression "(int)piVar13 + 1" (cast_expression "(int)piVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "param_5 = param_5 + 1;" (assignment_expression "param_5 = param_5 + 1" identifier = (binary_expression "param_5 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(piVar13 != param_4)" ( (binary_expression "piVar13 != param_4" identifier != identifier) )) ;) })) (expression_statement "local_28 = 0;" (assignment_expression "local_28 = 0" identifier = number_literal) ;) (expression_statement "local_38 = 0;" (assignment_expression "local_38 = 0" identifier = number_literal) ;) (expression_statement "local_3c = 0;" (assignment_expression "local_3c = 0" identifier = number_literal) ;) (expression_statement "local_34 = 0;" (assignment_expression "local_34 = 0" identifier = number_literal) ;) (expression_statement "local_2c = 0;" (assignment_expression "local_2c = 0" identifier = number_literal) ;) (expression_statement "local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70);" (assignment_expression "local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70)" identifier = (pointer_expression "*(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70)" * (cast_expression "(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar16 + 0xc) + 0x70)" ( (binary_expression "*(int *)(iVar16 + 0xc) + 0x70" (pointer_expression "*(int *)(iVar16 + 0xc)" * (cast_expression "(int *)(iVar16 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0xc)" ( (binary_expression "iVar16 + 0xc" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360);" (call_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)" ( (pointer_expression "*(code *)PTR_sqlite3_str_appendall_0015b7c4" * (cast_expression "(code *)PTR_sqlite3_str_appendall_0015b7c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_3c,PTR_UINT_0015b5fc + -0x5360)" ( (pointer_expression "&local_3c" & identifier) , (binary_expression "PTR_UINT_0015b5fc + -0x5360" identifier + number_literal) ))) ;) (if_statement "if (param_1[5] != 0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);\n  }" if (parenthesized_expression "(param_1[5] != 0)" ( (binary_expression "param_1[5] != 0" (subscript_expression "param_1[5]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);\n  }" { (expression_statement "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);" (call_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)" ( (pointer_expression "*(code *)PTR_sqlite3_str_appendf_0015b810" * (cast_expression "(code *)PTR_sqlite3_str_appendf_0015b810" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_3c,PTR_UINT_0015b5fc + -0x5358)" ( (pointer_expression "&local_3c" & identifier) , (binary_expression "PTR_UINT_0015b5fc + -0x5358" identifier + number_literal) ))) ;) })) (expression_statement "puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10);" (assignment_expression "puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10)" identifier = (cast_expression "(undefined *)**(undefined4 **)(iVar16 + 0x10)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(iVar16 + 0x10)" * (pointer_expression "*(undefined4 **)(iVar16 + 0x10)" * (cast_expression "(undefined4 **)(iVar16 + 0x10)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x10)" ( (binary_expression "iVar16 + 0x10" identifier + number_literal) ))))))) ;) (expression_statement "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c);" (call_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)" ( (pointer_expression "*(code *)PTR_sqlite3_str_appendall_0015b7c4" * (cast_expression "(code *)PTR_sqlite3_str_appendall_0015b7c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_3c)" ( (pointer_expression "&local_3c" & identifier) ))) ;) (if_statement "if (param_1[4] != 0) {\n    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);\n  }" if (parenthesized_expression "(param_1[4] != 0)" ( (binary_expression "param_1[4] != 0" (subscript_expression "param_1[4]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);\n  }" { (expression_statement "puVar2 = PTR_LAB_0015b5e8 + 0x55c4;" (assignment_expression "puVar2 = PTR_LAB_0015b5e8 + 0x55c4" identifier = (binary_expression "PTR_LAB_0015b5e8 + 0x55c4" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);" (call_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)" ( (pointer_expression "*(code *)PTR_sqlite3_str_appendf_0015b810" * (cast_expression "(code *)PTR_sqlite3_str_appendf_0015b810" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_3c)" ( (pointer_expression "&local_3c" & identifier) ))) ;) })) (expression_statement "puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c);" (assignment_expression "puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c)" identifier = (cast_expression "(undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c)" (parenthesized_expression "(*(code *)(PTR_LAB_0015b6d8 + -0x2478))" ( (pointer_expression "*(code *)(PTR_LAB_0015b6d8 + -0x2478)" * (cast_expression "(code *)(PTR_LAB_0015b6d8 + -0x2478)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0015b6d8 + -0x2478)" ( (binary_expression "PTR_LAB_0015b6d8 + -0x2478" identifier + number_literal) )))) )) (argument_list "(&local_3c)" ( (pointer_expression "&local_3c" & identifier) ))))) ;) (if_statement "if (puVar4 == (undefined *)0x0) {\nLAB_000f7410:\n    iVar3 = 7;\n  }\n  else {\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }" if (parenthesized_expression "(puVar4 == (undefined *)0x0)" ( (binary_expression "puVar4 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000f7410:\n    iVar3 = 7;\n  }" { (labeled_statement "LAB_000f7410:\n    iVar3 = 7;" statement_identifier : (expression_statement "iVar3 = 7;" (assignment_expression "iVar3 = 7" identifier = number_literal) ;)) }) (else_clause "else {\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }" else (compound_statement "{\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }" { (expression_statement "piVar5 = param_1 + 1;" (assignment_expression "piVar5 = param_1 + 1" identifier = (binary_expression "param_1 + 1" identifier + number_literal)) ;) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" identifier = number_literal) ;) (expression_statement "puVar2 = puVar4;" (assignment_expression "puVar2 = puVar4" identifier = identifier) ;) (expression_statement "iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);" (assignment_expression "iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff)" identifier = (call_expression "sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff)" identifier (argument_list "(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff)" ( (pointer_expression "*(undefined4 *)(iVar16 + 0xc)" * (cast_expression "(undefined4 *)(iVar16 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0xc)" ( (binary_expression "iVar16 + 0xc" identifier + number_literal) )))) , identifier , number_literal )))) ;) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(puVar4);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(puVar4)" (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 "(puVar4)" ( identifier ))) ;) (if_statement "if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      iVar3 = FUN_000ddfb0(param_1);\n    }" { (expression_statement "iVar3 = FUN_000ddfb0(param_1);" (assignment_expression "iVar3 = FUN_000ddfb0(param_1)" identifier = (call_expression "FUN_000ddfb0(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) }) (else_clause "else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }" else (compound_statement "{\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }" { (expression_statement "puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));" (assignment_expression "puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc))" identifier = (cast_expression "(undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc))" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc))" (parenthesized_expression "(*(code *)PTR_sqlite3_errmsg_0015b624)" ( (pointer_expression "*(code *)PTR_sqlite3_errmsg_0015b624" * (cast_expression "(code *)PTR_sqlite3_errmsg_0015b624" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)(iVar16 + 0xc))" ( (pointer_expression "*(undefined4 *)(iVar16 + 0xc)" * (cast_expression "(undefined4 *)(iVar16 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 0xc)" ( (binary_expression "iVar16 + 0xc" identifier + number_literal) )))) ))))) ;) (expression_statement "uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);" (assignment_expression "uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4)" identifier = (call_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4)" (parenthesized_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)" ( (pointer_expression "*(code *)PTR_sqlite3_mprintf_0015b628" * (cast_expression "(code *)PTR_sqlite3_mprintf_0015b628" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_LAB_0015b5e8 + 0x71f4)" ( (binary_expression "PTR_LAB_0015b5e8 + 0x71f4" identifier + number_literal) )))) ;) (expression_statement "*(undefined4 *)(iVar16 + 8) = uVar12;" (assignment_expression "*(undefined4 *)(iVar16 + 8) = uVar12" (pointer_expression "*(undefined4 *)(iVar16 + 8)" * (cast_expression "(undefined4 *)(iVar16 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar16 + 8)" ( (binary_expression "iVar16 + 8" identifier + number_literal) )))) = identifier) ;) }))) }))) (if_statement "if (local_24 == *(int *)puVar1) {\n    return iVar3;\n  }" if (parenthesized_expression "(local_24 == *(int *)puVar1)" ( (binary_expression "local_24 == *(int *)puVar1" identifier == (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return iVar3;\n  }" { (return_statement "return iVar3;" return identifier ;) })) (expression_statement "uVar21 = 0xf7454;" (assignment_expression "uVar21 = 0xf7454" identifier = number_literal) ;) (expression_statement "iVar8 = local_24;" (assignment_expression "iVar8 = local_24" identifier = identifier) ;) (expression_statement "puVar4 = PTR___stack_chk_fail_0015ba10;" (assignment_expression "puVar4 = 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_88 = puVar4 + 0x6c15c;" (assignment_expression "local_88 = puVar4 + 0x6c15c" identifier = (binary_expression "puVar4 + 0x6c15c" identifier + number_literal)) ;) (expression_statement "piVar13 = *(int **)(puVar4 + 0x645d8);" (assignment_expression "piVar13 = *(int **)(puVar4 + 0x645d8)" identifier = (pointer_expression "*(int **)(puVar4 + 0x645d8)" * (cast_expression "(int **)(puVar4 + 0x645d8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar4 + 0x645d8)" ( (binary_expression "puVar4 + 0x645d8" identifier + number_literal) ))))) ;) (expression_statement "uVar12 = *(undefined4 *)(iVar8 + 0x24);" (assignment_expression "uVar12 = *(undefined4 *)(iVar8 + 0x24)" identifier = (pointer_expression "*(undefined4 *)(iVar8 + 0x24)" * (cast_expression "(undefined4 *)(iVar8 + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x24)" ( (binary_expression "iVar8 + 0x24" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(iVar8 + 0x20);" (assignment_expression "iVar10 = *(int *)(iVar8 + 0x20)" identifier = (pointer_expression "*(int *)(iVar8 + 0x20)" * (cast_expression "(int *)(iVar8 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x20)" ( (binary_expression "iVar8 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "local_7c = (undefined4 *)*piVar13;" (assignment_expression "local_7c = (undefined4 *)*piVar13" identifier = (cast_expression "(undefined4 *)*piVar13" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar13" * identifier))) ;) (expression_statement "local_80 = 0;" (assignment_expression "local_80 = 0" identifier = number_literal) ;) (expression_statement "local_74 = iVar3;" (assignment_expression "local_74 = iVar3" identifier = identifier) ;) (expression_statement "local_70 = param_5;" (assignment_expression "local_70 = param_5" identifier = identifier) ;) (expression_statement "local_6c = param_1;" (assignment_expression "local_6c = param_1" identifier = identifier) ;) (expression_statement "local_68 = iVar16;" (assignment_expression "local_68 = iVar16" identifier = identifier) ;) (expression_statement "local_64 = uVar21;" (assignment_expression "local_64 = uVar21" identifier = identifier) ;) (expression_statement "iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10);" (assignment_expression "iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10)" identifier = (call_expression "(**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10)" (parenthesized_expression "(**(code **)(puVar4 + 0x641d4))" ( (pointer_expression "**(code **)(puVar4 + 0x641d4)" * (pointer_expression "*(code **)(puVar4 + 0x641d4)" * (cast_expression "(code **)(puVar4 + 0x641d4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar4 + 0x641d4)" ( (binary_expression "puVar4 + 0x641d4" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10)" ( (binary_expression "*(int *)(puVar4 + 0x641a8) + -0x5354" (pointer_expression "*(int *)(puVar4 + 0x641a8)" * (cast_expression "(int *)(puVar4 + 0x641a8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar4 + 0x641a8)" ( (binary_expression "puVar4 + 0x641a8" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (if_statement "if (iVar16 == 0) {\n    iVar3 = 7;\n    (**(code **)(local_88 + -0x7f90))(0);\nLAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  else {\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }" if (parenthesized_expression "(iVar16 == 0)" ( (binary_expression "iVar16 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar3 = 7;\n    (**(code **)(local_88 + -0x7f90))(0);\nLAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }" { (expression_statement "iVar3 = 7;" (assignment_expression "iVar3 = 7" identifier = number_literal) ;) (expression_statement "(**(code **)(local_88 + -0x7f90))(0);" (call_expression "(**(code **)(local_88 + -0x7f90))(0)" (parenthesized_expression "(**(code **)(local_88 + -0x7f90))" ( (pointer_expression "**(code **)(local_88 + -0x7f90)" * (pointer_expression "*(code **)(local_88 + -0x7f90)" * (cast_expression "(code **)(local_88 + -0x7f90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7f90)" ( (binary_expression "local_88 + -0x7f90" identifier + number_literal) ))))) )) (argument_list "(0)" ( number_literal ))) ;) (labeled_statement "LAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);" statement_identifier : (expression_statement "(**(code **)(local_88 + -0x7f74))(local_80);" (call_expression "(**(code **)(local_88 + -0x7f74))(local_80)" (parenthesized_expression "(**(code **)(local_88 + -0x7f74))" ( (pointer_expression "**(code **)(local_88 + -0x7f74)" * (pointer_expression "*(code **)(local_88 + -0x7f74)" * (cast_expression "(code **)(local_88 + -0x7f74)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7f74)" ( (binary_expression "local_88 + -0x7f74" identifier + number_literal) ))))) )) (argument_list "(local_80)" ( identifier ))) ;)) }) (else_clause "else {\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }" else (compound_statement "{\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }" { (expression_statement "piVar5 = &local_80;" (assignment_expression "piVar5 = &local_80" identifier = (pointer_expression "&local_80" & identifier)) ;) (expression_statement "uVar12 = 0xffffffff;" (assignment_expression "uVar12 = 0xffffffff" identifier = number_literal) ;) (expression_statement "local_90 = 0;" (assignment_expression "local_90 = 0" identifier = number_literal) ;) (expression_statement "iVar10 = iVar16;" (assignment_expression "iVar10 = iVar16" identifier = identifier) ;) (expression_statement "iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);" (assignment_expression "iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16)" identifier = (call_expression "sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16)" identifier (argument_list "(*(undefined4 *)(iVar8 + 0xc),iVar16)" ( (pointer_expression "*(undefined4 *)(iVar8 + 0xc)" * (cast_expression "(undefined4 *)(iVar8 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0xc)" ( (binary_expression "iVar8 + 0xc" identifier + number_literal) )))) , identifier )))) ;) (expression_statement "(**(code **)(local_88 + -0x7f90))(iVar16);" (call_expression "(**(code **)(local_88 + -0x7f90))(iVar16)" (parenthesized_expression "(**(code **)(local_88 + -0x7f90))" ( (pointer_expression "**(code **)(local_88 + -0x7f90)" * (pointer_expression "*(code **)(local_88 + -0x7f90)" * (cast_expression "(code **)(local_88 + -0x7f90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7f90)" ( (binary_expression "local_88 + -0x7f90" identifier + number_literal) ))))) )) (argument_list "(iVar16)" ( identifier ))) ;) (if_statement "if (iVar3 != 0) goto LAB_000f7558;" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000f7558;" goto statement_identifier ;)) (if_statement "if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }" if (parenthesized_expression "(puVar2 == (undefined *)0x0)" ( (binary_expression "puVar2 == (undefined *)0x0" identifier == (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }" { (expression_statement "uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);" (assignment_expression "uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0)" identifier = (call_expression "(**(code **)(local_88 + -0x7d2c))(local_80,0)" (parenthesized_expression "(**(code **)(local_88 + -0x7d2c))" ( (pointer_expression "**(code **)(local_88 + -0x7d2c)" * (pointer_expression "*(code **)(local_88 + -0x7d2c)" * (cast_expression "(code **)(local_88 + -0x7d2c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7d2c)" ( (binary_expression "local_88 + -0x7d2c" identifier + number_literal) ))))) )) (argument_list "(local_80,0)" ( identifier , number_literal )))) ;) (expression_statement "iVar10 = *(int *)(iVar8 + 0x24);" (assignment_expression "iVar10 = *(int *)(iVar8 + 0x24)" identifier = (pointer_expression "*(int *)(iVar8 + 0x24)" * (cast_expression "(int *)(iVar8 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x24)" ( (binary_expression "iVar8 + 0x24" identifier + number_literal) ))))) ;) (expression_statement "uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);" (assignment_expression "uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10)" identifier = (call_expression "(**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10)" (parenthesized_expression "(**(code **)(local_88 + -0x7f88))" ( (pointer_expression "**(code **)(local_88 + -0x7f88)" * (pointer_expression "*(code **)(local_88 + -0x7f88)" * (cast_expression "(code **)(local_88 + -0x7f88)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7f88)" ( (binary_expression "local_88 + -0x7f88" identifier + number_literal) ))))) )) (argument_list "(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10)" ( (binary_expression "*(int *)(local_88 + -0x7fb4) + -0x5340" (pointer_expression "*(int *)(local_88 + -0x7fb4)" * (cast_expression "(int *)(local_88 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_88 + -0x7fb4)" ( (binary_expression "local_88 + -0x7fb4" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (expression_statement "*(undefined4 *)(iVar8 + 8) = uVar21;" (assignment_expression "*(undefined4 *)(iVar8 + 8) = uVar21" (pointer_expression "*(undefined4 *)(iVar8 + 8)" * (cast_expression "(undefined4 *)(iVar8 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 8)" ( (binary_expression "iVar8 + 8" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }" else (compound_statement "{\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }" { (expression_statement "uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);" (assignment_expression "uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2)" identifier = (call_expression "(**(code **)(local_88 + -0x7d2c))(local_80,puVar2)" (parenthesized_expression "(**(code **)(local_88 + -0x7d2c))" ( (pointer_expression "**(code **)(local_88 + -0x7d2c)" * (pointer_expression "*(code **)(local_88 + -0x7d2c)" * (cast_expression "(code **)(local_88 + -0x7d2c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7d2c)" ( (binary_expression "local_88 + -0x7d2c" identifier + number_literal) ))))) )) (argument_list "(local_80,puVar2)" ( identifier , identifier )))) ;) (expression_statement "piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);" (assignment_expression "piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1)" identifier = (cast_expression "(int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1)" (parenthesized_expression "(**(code **)(local_88 + -0x7d2c))" ( (pointer_expression "**(code **)(local_88 + -0x7d2c)" * (pointer_expression "*(code **)(local_88 + -0x7d2c)" * (cast_expression "(code **)(local_88 + -0x7d2c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7d2c)" ( (binary_expression "local_88 + -0x7d2c" identifier + number_literal) ))))) )) (argument_list "(local_80,puVar2 + 1)" ( identifier , (binary_expression "puVar2 + 1" identifier + number_literal) ))))) ;) (expression_statement "iVar10 = *(int *)(iVar8 + 0x24);" (assignment_expression "iVar10 = *(int *)(iVar8 + 0x24)" identifier = (pointer_expression "*(int *)(iVar8 + 0x24)" * (cast_expression "(int *)(iVar8 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x24)" ( (binary_expression "iVar8 + 0x24" identifier + number_literal) ))))) ;) (expression_statement "uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);" (assignment_expression "uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10)" identifier = (call_expression "(**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10)" (parenthesized_expression "(**(code **)(local_88 + -0x7f88))" ( (pointer_expression "**(code **)(local_88 + -0x7f88)" * (pointer_expression "*(code **)(local_88 + -0x7f88)" * (cast_expression "(code **)(local_88 + -0x7f88)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7f88)" ( (binary_expression "local_88 + -0x7f88" identifier + number_literal) ))))) )) (argument_list "(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10)" ( (binary_expression "*(int *)(local_88 + -0x7fb4) + -0x5320" (pointer_expression "*(int *)(local_88 + -0x7fb4)" * (cast_expression "(int *)(local_88 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_88 + -0x7fb4)" ( (binary_expression "local_88 + -0x7fb4" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (expression_statement "*(undefined4 *)(iVar8 + 8) = uVar21;" (assignment_expression "*(undefined4 *)(iVar8 + 8) = uVar21" (pointer_expression "*(undefined4 *)(iVar8 + 8)" * (cast_expression "(undefined4 *)(iVar8 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 8)" ( (binary_expression "iVar8 + 8" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "iVar3 = 0x13;" (assignment_expression "iVar3 = 0x13" identifier = number_literal) ;) (expression_statement "(**(code **)(local_88 + -0x7f74))(local_80);" (call_expression "(**(code **)(local_88 + -0x7f74))(local_80)" (parenthesized_expression "(**(code **)(local_88 + -0x7f74))" ( (pointer_expression "**(code **)(local_88 + -0x7f74)" * (pointer_expression "*(code **)(local_88 + -0x7f74)" * (cast_expression "(code **)(local_88 + -0x7f74)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7f74)" ( (binary_expression "local_88 + -0x7f74" identifier + number_literal) ))))) )) (argument_list "(local_80)" ( identifier ))) ;) }))) (if_statement "if (local_7c == (undefined4 *)*piVar13) {\n    return iVar3;\n  }" if (parenthesized_expression "(local_7c == (undefined4 *)*piVar13)" ( (binary_expression "local_7c == (undefined4 *)*piVar13" identifier == (cast_expression "(undefined4 *)*piVar13" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar13" * identifier))) )) (compound_statement "{\n    return iVar3;\n  }" { (return_statement "return iVar3;" return identifier ;) })) (expression_statement "pcVar19 = *(code **)(local_88 + -0x7ba0);" (assignment_expression "pcVar19 = *(code **)(local_88 + -0x7ba0)" identifier = (pointer_expression "*(code **)(local_88 + -0x7ba0)" * (cast_expression "(code **)(local_88 + -0x7ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(local_88 + -0x7ba0)" ( (binary_expression "local_88 + -0x7ba0" identifier + number_literal) ))))) ;) (expression_statement "pcVar22 = FUN_000f75ec;" (assignment_expression "pcVar22 = FUN_000f75ec" identifier = identifier) ;) (expression_statement "puVar9 = local_7c;" (assignment_expression "puVar9 = local_7c" identifier = identifier) ;) (expression_statement "(*pcVar19)();" (call_expression "(*pcVar19)()" (parenthesized_expression "(*pcVar19)" ( (pointer_expression "*pcVar19" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puVar11 = &uStack_98;" (assignment_expression "puVar11 = &uStack_98" identifier = (pointer_expression "&uStack_98" & identifier)) ;) (expression_statement "piVar14 = *(int **)(pcVar19 + 0x64440);" (assignment_expression "piVar14 = *(int **)(pcVar19 + 0x64440)" identifier = (pointer_expression "*(int **)(pcVar19 + 0x64440)" * (cast_expression "(int **)(pcVar19 + 0x64440)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0x64440)" ( (binary_expression "pcVar19 + 0x64440" identifier + number_literal) ))))) ;) (expression_statement "iStack_b8 = 0;" (assignment_expression "iStack_b8 = 0" identifier = number_literal) ;) (expression_statement "iStack_b4 = *piVar14;" (assignment_expression "iStack_b4 = *piVar14" identifier = (pointer_expression "*piVar14" * identifier)) ;) (expression_statement "iStack_b0 = iVar8;" (assignment_expression "iStack_b0 = iVar8" identifier = identifier) ;) (expression_statement "iStack_ac = iVar3;" (assignment_expression "iStack_ac = iVar3" identifier = identifier) ;) (expression_statement "piStack_a8 = piVar13;" (assignment_expression "piStack_a8 = piVar13" identifier = identifier) ;) (expression_statement "pcStack_a4 = pcVar22;" (assignment_expression "pcStack_a4 = pcVar22" identifier = identifier) ;) (expression_statement "uStack_98 = uVar12;" (assignment_expression "uStack_98 = uVar12" identifier = identifier) ;) (expression_statement "piStack_94 = piVar5;" (assignment_expression "piStack_94 = piVar5" identifier = identifier) ;) (expression_statement "puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11);" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11)" identifier = (cast_expression "(undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11)" (parenthesized_expression "(**(code **)(pcVar19 + 0x6402c))" ( (pointer_expression "**(code **)(pcVar19 + 0x6402c)" * (pointer_expression "*(code **)(pcVar19 + 0x6402c)" * (cast_expression "(code **)(pcVar19 + 0x6402c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0x6402c)" ( (binary_expression "pcVar19 + 0x6402c" identifier + number_literal) ))))) )) (argument_list "(iVar10,puVar11)" ( identifier , identifier ))))) ;) (if_statement "if (puVar9[10] == 0) {\n    if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }\n  }" if (parenthesized_expression "(puVar9[10] == 0)" ( (binary_expression "puVar9[10] == 0" (subscript_expression "puVar9[10]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n    if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }\n  }" { (if_statement "if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }" if (parenthesized_expression "(puVar6 == (undefined4 *)0x0)" ( (binary_expression "puVar6 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      puVar9[10] = 7;\n    }" { (expression_statement "puVar9[10] = 7;" (assignment_expression "puVar9[10] = 7" (subscript_expression "puVar9[10]" identifier [ number_literal ]) = number_literal) ;) }) (else_clause "else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }" else (compound_statement "{\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }" { (expression_statement "piVar5 = &iStack_b8;" (assignment_expression "piVar5 = &iStack_b8" identifier = (pointer_expression "&iStack_b8" & identifier)) ;) (expression_statement "uVar12 = 0xffffffff;" (assignment_expression "uVar12 = 0xffffffff" identifier = number_literal) ;) (expression_statement "iStack_d0 = 0;" (assignment_expression "iStack_d0 = 0" identifier = number_literal) ;) (expression_statement "puVar11 = puVar6;" (assignment_expression "puVar11 = puVar6" identifier = identifier) ;) (expression_statement "uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);" (assignment_expression "uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff)" identifier = (call_expression "sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff)" identifier (argument_list "(*puVar9,puVar6,0xffffffff)" ( (pointer_expression "*puVar9" * identifier) , identifier , number_literal )))) ;) (expression_statement "puVar9[10] = uVar21;" (assignment_expression "puVar9[10] = uVar21" (subscript_expression "puVar9[10]" identifier [ number_literal ]) = identifier) ;) }))) })) (expression_statement "(**(code **)(pcVar19 + 0x64034))(puVar6);" (call_expression "(**(code **)(pcVar19 + 0x64034))(puVar6)" (parenthesized_expression "(**(code **)(pcVar19 + 0x64034))" ( (pointer_expression "**(code **)(pcVar19 + 0x64034)" * (pointer_expression "*(code **)(pcVar19 + 0x64034)" * (cast_expression "(code **)(pcVar19 + 0x64034)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0x64034)" ( (binary_expression "pcVar19 + 0x64034" identifier + number_literal) ))))) )) (argument_list "(puVar6)" ( identifier ))) ;) (if_statement "if (iStack_b4 == *piVar14) {\n    return iStack_b8;\n  }" if (parenthesized_expression "(iStack_b4 == *piVar14)" ( (binary_expression "iStack_b4 == *piVar14" identifier == (pointer_expression "*piVar14" * identifier)) )) (compound_statement "{\n    return iStack_b8;\n  }" { (return_statement "return iStack_b8;" return identifier ;) })) (expression_statement "pcVar22 = *(code **)(pcVar19 + 0x64424);" (assignment_expression "pcVar22 = *(code **)(pcVar19 + 0x64424)" identifier = (pointer_expression "*(code **)(pcVar19 + 0x64424)" * (cast_expression "(code **)(pcVar19 + 0x64424)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar19 + 0x64424)" ( (binary_expression "pcVar19 + 0x64424" identifier + number_literal) ))))) ;) (expression_statement "iVar16 = iStack_b4;" (assignment_expression "iVar16 = iStack_b4" identifier = identifier) ;) (expression_statement "(*pcVar22)();" (call_expression "(*pcVar22)()" (parenthesized_expression "(*pcVar22)" ( (pointer_expression "*pcVar22" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puStack_f8 = puVar1;" (assignment_expression "puStack_f8 = puVar1" identifier = identifier) ;) (expression_statement "piVar13 = *(int **)(pcVar22 + 0x6435c);" (assignment_expression "piVar13 = *(int **)(pcVar22 + 0x6435c)" identifier = (pointer_expression "*(int **)(pcVar22 + 0x6435c)" * (cast_expression "(int **)(pcVar22 + 0x6435c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x6435c)" ( (binary_expression "pcVar22 + 0x6435c" identifier + number_literal) ))))) ;) (expression_statement "iStack_11c = 0;" (assignment_expression "iStack_11c = 0" identifier = number_literal) ;) (expression_statement "iStack_10c = *piVar13;" (assignment_expression "iStack_10c = *piVar13" identifier = (pointer_expression "*piVar13" * identifier)) ;) (expression_statement "piStack_108 = piVar14;" (assignment_expression "piStack_108 = piVar14" identifier = identifier) ;) (expression_statement "puStack_104 = puVar6;" (assignment_expression "puStack_104 = puVar6" identifier = identifier) ;) (expression_statement "puStack_100 = puVar9;" (assignment_expression "puStack_100 = puVar9" identifier = identifier) ;) (expression_statement "puStack_fc = puVar2;" (assignment_expression "puStack_fc = puVar2" identifier = identifier) ;) (expression_statement "piStack_f4 = param_4;" (assignment_expression "piStack_f4 = param_4" identifier = identifier) ;) (expression_statement "puStack_f0 = unaff_s6;" (assignment_expression "puStack_f0 = unaff_s6" identifier = identifier) ;) (expression_statement "iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12);" (assignment_expression "iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12)" identifier = (call_expression "(**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12)" (parenthesized_expression "(**(code **)(pcVar22 + 0x63f68))" ( (pointer_expression "**(code **)(pcVar22 + 0x63f68)" * (pointer_expression "*(code **)(pcVar22 + 0x63f68)" * (cast_expression "(code **)(pcVar22 + 0x63f68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x63f68)" ( (binary_expression "pcVar22 + 0x63f68" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12)" ( (binary_expression "*(int *)(pcVar22 + 0x63f2c) + -0x65b0" (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" * (cast_expression "(int *)(pcVar22 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f2c)" ( (binary_expression "pcVar22 + 0x63f2c" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);\n    if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    uVar12 = 0xffffffff;\n  }\n  else {\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);\n    if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    uVar12 = 0xffffffff;\n  }" { (expression_statement "iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);" (assignment_expression "iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11)" identifier = (call_expression "(**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11)" (parenthesized_expression "(**(code **)(pcVar22 + 0x63f58))" ( (pointer_expression "**(code **)(pcVar22 + 0x63f58)" * (pointer_expression "*(code **)(pcVar22 + 0x63f58)" * (cast_expression "(code **)(pcVar22 + 0x63f58)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x63f58)" ( (binary_expression "pcVar22 + 0x63f58" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11)" ( (binary_expression "*(int *)(pcVar22 + 0x63f2c) + -0x52f8" (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" * (cast_expression "(int *)(pcVar22 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f2c)" ( (binary_expression "pcVar22 + 0x63f2c" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (if_statement "if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (compound_statement "{\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }" { (expression_statement "iStack_11c = 7;" (assignment_expression "iStack_11c = 7" identifier = number_literal) ;) (goto_statement "goto LAB_000f778c;" goto statement_identifier ;) })) (expression_statement "uVar12 = 0xffffffff;" (assignment_expression "uVar12 = 0xffffffff" identifier = number_literal) ;) }) (else_clause "else {\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }" else (compound_statement "{\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }" { (expression_statement "iStack_118 = 0;" (assignment_expression "iStack_118 = 0" identifier = number_literal) ;) (expression_statement "pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);" (assignment_expression "pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4)" identifier = (cast_expression "(code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar22 + 0x6404c) + -0x1bd4)" ( (binary_expression "*(int *)(pcVar22 + 0x6404c) + -0x1bd4" (pointer_expression "*(int *)(pcVar22 + 0x6404c)" * (cast_expression "(int *)(pcVar22 + 0x6404c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x6404c)" ( (binary_expression "pcVar22 + 0x6404c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "uStack_114 = 0;" (assignment_expression "uStack_114 = 0" identifier = number_literal) ;) (expression_statement "uStack_110 = 0;" (assignment_expression "uStack_110 = 0" identifier = number_literal) ;) (expression_statement "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , (binary_expression "*(int *)(pcVar22 + 0x63f2c) + -0x5288" (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" * (cast_expression "(int *)(pcVar22 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f2c)" ( (binary_expression "pcVar22 + 0x63f2c" identifier + number_literal) )))) + number_literal) , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);" (assignment_expression "pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4)" identifier = (cast_expression "(code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar22 + 0x6404c) + -0x1cd4)" ( (binary_expression "*(int *)(pcVar22 + 0x6404c) + -0x1cd4" (pointer_expression "*(int *)(pcVar22 + 0x6404c)" * (cast_expression "(int *)(pcVar22 + 0x6404c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x6404c)" ( (binary_expression "pcVar22 + 0x6404c" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar20)(&iStack_118,puVar11,&iStack_11c);" (call_expression "(*pcVar20)(&iStack_118,puVar11,&iStack_11c)" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(&iStack_118,puVar11,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , identifier , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , (binary_expression "*(int *)(pcVar22 + 0x63f2c) + -0x1e34" (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" * (cast_expression "(int *)(pcVar22 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f2c)" ( (binary_expression "pcVar22 + 0x63f2c" identifier + number_literal) )))) + number_literal) , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*pcVar20)(&iStack_118,uVar12,&iStack_11c);" (call_expression "(*pcVar20)(&iStack_118,uVar12,&iStack_11c)" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(&iStack_118,uVar12,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , identifier , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , (binary_expression "*(int *)(pcVar22 + 0x63f18) + 0x5cfc" (pointer_expression "*(int *)(pcVar22 + 0x63f18)" * (cast_expression "(int *)(pcVar22 + 0x63f18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f18)" ( (binary_expression "pcVar22 + 0x63f18" identifier + number_literal) )))) + number_literal) , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "iVar3 = iStack_118;" (assignment_expression "iVar3 = iStack_118" identifier = identifier) ;) (expression_statement "uVar12 = uStack_114;" (assignment_expression "uVar12 = uStack_114" identifier = identifier) ;) (if_statement "if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }" if (parenthesized_expression "(0 < (int)piVar5)" ( (binary_expression "0 < (int)piVar5" number_literal < (cast_expression "(int)piVar5" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }" { (expression_statement "iVar10 = *(int *)(pcVar22 + 0x6404c);" (assignment_expression "iVar10 = *(int *)(pcVar22 + 0x6404c)" identifier = (pointer_expression "*(int *)(pcVar22 + 0x6404c)" * (cast_expression "(int *)(pcVar22 + 0x6404c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x6404c)" ( (binary_expression "pcVar22 + 0x6404c" identifier + number_literal) ))))) ;) (expression_statement "piVar14 = (int *)0x0;" (assignment_expression "piVar14 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar17 = *(int *)(pcVar22 + 0x63f18);" (assignment_expression "iVar17 = *(int *)(pcVar22 + 0x63f18)" identifier = (pointer_expression "*(int *)(pcVar22 + 0x63f18)" * (cast_expression "(int *)(pcVar22 + 0x63f18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f18)" ( (binary_expression "pcVar22 + 0x63f18" identifier + number_literal) ))))) ;) (expression_statement "iVar18 = *(int *)(pcVar22 + 0x63f2c);" (assignment_expression "iVar18 = *(int *)(pcVar22 + 0x63f2c)" identifier = (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" * (cast_expression "(int *)(pcVar22 + 0x63f2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f2c)" ( (binary_expression "pcVar22 + 0x63f2c" identifier + number_literal) ))))) ;) (expression_statement "iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;" (assignment_expression "iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4" identifier = (binary_expression "*(int *)(pcVar22 + 0x63f18) + 0x53f4" (pointer_expression "*(int *)(pcVar22 + 0x63f18)" * (cast_expression "(int *)(pcVar22 + 0x63f18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar22 + 0x63f18)" ( (binary_expression "pcVar22 + 0x63f18" identifier + number_literal) )))) + number_literal)) ;) (do_statement "do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);" do (compound_statement "{\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      }" { (while_statement "while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }" while (parenthesized_expression "(pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0')" ( (comma_expression "pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0'" (assignment_expression "pcVar7 = (char *)(iStack_cc + (int)piVar14)" identifier = (cast_expression "(char *)(iStack_cc + (int)piVar14)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_cc + (int)piVar14)" ( (binary_expression "iStack_cc + (int)piVar14" identifier + (cast_expression "(int)piVar14" ( (type_descriptor "int" primitive_type) ) identifier)) )))) , (comma_expression "piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0'" (assignment_expression "piVar14 = (int *)((int)piVar14 + 1)" identifier = (cast_expression "(int *)((int)piVar14 + 1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar14 + 1)" ( (binary_expression "(int)piVar14 + 1" (cast_expression "(int)piVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (binary_expression "*pcVar7 != '\0'" (pointer_expression "*pcVar7" * identifier) != (char_literal "'\0'" ' escape_sequence ')))) )) (compound_statement "{\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }" { (expression_statement "(*pcVar15)(&iStack_118,iVar8,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,iVar8,&iStack_11c)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(&iStack_118,iVar8,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , identifier , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);" (call_expression "(*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c)" (parenthesized_expression "(*pcVar20)" ( (pointer_expression "*pcVar20" * identifier) )) (argument_list "(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , (pointer_expression "*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4)" * (cast_expression "(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_d0 + (int)piVar14 * 4 + -4)" ( (binary_expression "iStack_d0 + (int)piVar14 * 4 + -4" (binary_expression "iStack_d0 + (int)piVar14 * 4" identifier + (binary_expression "(int)piVar14 * 4" (cast_expression "(int)piVar14" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) + number_literal) )))) , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c)" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "(&iStack_118,iVar18 + -0x5278,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , (binary_expression "iVar18 + -0x5278" identifier + number_literal) , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "(*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);" (call_expression "(*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c)" (parenthesized_expression "(*(code *)(iVar10 + -0x1b0c))" ( (pointer_expression "*(code *)(iVar10 + -0x1b0c)" * (cast_expression "(code *)(iVar10 + -0x1b0c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + -0x1b0c)" ( (binary_expression "iVar10 + -0x1b0c" identifier + number_literal) )))) )) (argument_list "(&iStack_118,piVar14,&iStack_11c)" ( (pointer_expression "&iStack_118" & identifier) , identifier , (pointer_expression "&iStack_11c" & identifier) ))) ;) (expression_statement "iVar8 = iVar17 + 0x5c88;" (assignment_expression "iVar8 = iVar17 + 0x5c88" identifier = (binary_expression "iVar17 + 0x5c88" identifier + number_literal)) ;) (expression_statement "iVar3 = iStack_118;" (assignment_expression "iVar3 = iStack_118" identifier = identifier) ;) (expression_statement "uVar12 = uStack_114;" (assignment_expression "uVar12 = uStack_114" identifier = identifier) ;) (if_statement "if (piVar5 == piVar14) goto joined_r0x000f7930;" if (parenthesized_expression "(piVar5 == piVar14)" ( (binary_expression "piVar5 == piVar14" identifier == identifier) )) (goto_statement "goto joined_r0x000f7930;" goto statement_identifier ;)) })) (expression_statement "iVar3 = iStack_118;" (assignment_expression "iVar3 = iStack_118" identifier = identifier) ;) (expression_statement "uVar12 = uStack_114;" (assignment_expression "uVar12 = uStack_114" identifier = identifier) ;) }) while (parenthesized_expression "(piVar5 != piVar14)" ( (binary_expression "piVar5 != piVar14" identifier != identifier) )) ;) })) }))) (labeled_statement "joined_r0x000f7930:\n  if (iStack_11c == 0) {\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }" statement_identifier : (if_statement "if (iStack_11c == 0) {\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }" if (parenthesized_expression "(iStack_11c == 0)" ( (binary_expression "iStack_11c == 0" identifier == number_literal) )) (compound_statement "{\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }" { (expression_statement "iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);" (assignment_expression "iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0)" identifier = (call_expression "sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0)" identifier (argument_list "(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0)" ( identifier , identifier , identifier , (binary_expression "pcVar19 + 0x6bfc4" identifier + number_literal) , number_literal )))) ;) }))) (labeled_statement "LAB_000f778c:\n  (**(code **)(pcVar22 + 0x63f50))(iVar3);" statement_identifier : (expression_statement "(**(code **)(pcVar22 + 0x63f50))(iVar3);" (call_expression "(**(code **)(pcVar22 + 0x63f50))(iVar3)" (parenthesized_expression "(**(code **)(pcVar22 + 0x63f50))" ( (pointer_expression "**(code **)(pcVar22 + 0x63f50)" * (pointer_expression "*(code **)(pcVar22 + 0x63f50)" * (cast_expression "(code **)(pcVar22 + 0x63f50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x63f50)" ( (binary_expression "pcVar22 + 0x63f50" identifier + number_literal) ))))) )) (argument_list "(iVar3)" ( identifier ))) ;)) (if_statement "if (iStack_10c == *piVar13) {\n    return iStack_11c;\n  }" if (parenthesized_expression "(iStack_10c == *piVar13)" ( (binary_expression "iStack_10c == *piVar13" identifier == (pointer_expression "*piVar13" * identifier)) )) (compound_statement "{\n    return iStack_11c;\n  }" { (return_statement "return iStack_11c;" return identifier ;) })) (expression_statement "(**(code **)(pcVar22 + 0x64340))();" (call_expression "(**(code **)(pcVar22 + 0x64340))()" (parenthesized_expression "(**(code **)(pcVar22 + 0x64340))" ( (pointer_expression "**(code **)(pcVar22 + 0x64340)" * (pointer_expression "*(code **)(pcVar22 + 0x64340)" * (cast_expression "(code **)(pcVar22 + 0x64340)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar22 + 0x64340)" ( (binary_expression "pcVar22 + 0x64340" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar16 = FUN_000f6c34();" (assignment_expression "iVar16 = FUN_000f6c34()" identifier = (call_expression "FUN_000f6c34()" identifier (argument_list "()" ( )))) ;) (return_statement "return iVar16;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (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 * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE 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 ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (unary_expression - (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_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) )))) ^ LIT) )) << LIT) ))) >> LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * 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 = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) ]) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto 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) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != 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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression & IDENT) , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression & IDENT) , (binary_expression IDENT + LIT) ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression & IDENT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (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 IDENT + LIT) )))) )) (argument_list ( (pointer_expression & IDENT) ))))) ;) (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 = LIT) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , LIT )))) ;) (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 == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }))) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) )) (compound_statement { (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_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 = 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 ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (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 ( LIT ))) ;) (labeled_statement statement_identifier : (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 ))) ;)) }) (else_clause else (compound_statement { (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 = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (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 , 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 = (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 ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression 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 , IDENT )))) ;) (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 ( IDENT , (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (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 ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }))) (expression_statement (assignment_expression 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 ))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (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 (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 = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (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 ( IDENT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) }) (else_clause else (compound_statement { (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 = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * IDENT) , IDENT , LIT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) }))) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (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 = 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 (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (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 ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (pointer_expression & IDENT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (pointer_expression & IDENT) ))) ;) (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 (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (pointer_expression & IDENT) , IDENT , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (pointer_expression & IDENT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (pointer_expression & IDENT) , IDENT , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (pointer_expression & IDENT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (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 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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (do_statement do (compound_statement { (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) , (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) , (binary_expression (pointer_expression * IDENT) != (char_literal ' escape_sequence ')))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (pointer_expression & IDENT) , IDENT , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (pointer_expression & IDENT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (pointer_expression & IDENT) , (binary_expression IDENT + LIT) , (pointer_expression & IDENT) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( (pointer_expression & IDENT) , 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) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , (binary_expression IDENT + LIT) , LIT )))) ;) }))) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * IDENT)) )) (compound_statement { (return_statement return IDENT ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (return_statement return IDENT ;) })))
(function_definition "int FUN_000f7210(int *param_1,undefined4 param_2,undefined4 param_3,int *param_4,undefined4 *param_5\n                )\n\n{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined *puVar4;\n  int *piVar5;\n  undefined4 *puVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 *puVar9;\n  int iVar10;\n  undefined4 *puVar11;\n  undefined4 uVar12;\n  int *piVar13;\n  int *piVar14;\n  code *pcVar15;\n  int iVar16;\n  int iVar17;\n  undefined *unaff_s6;\n  int iVar18;\n  code *pcVar19;\n  code *pcVar20;\n  undefined4 uVar21;\n  code *pcVar22;\n  int iStack_11c;\n  int iStack_118;\n  undefined4 uStack_114;\n  undefined4 uStack_110;\n  int iStack_10c;\n  int *piStack_108;\n  undefined4 *puStack_104;\n  undefined4 *puStack_100;\n  undefined *puStack_fc;\n  undefined *puStack_f8;\n  int *piStack_f4;\n  undefined *puStack_f0;\n  int iStack_d0;\n  int iStack_cc;\n  int iStack_b8;\n  int iStack_b4;\n  int iStack_b0;\n  int iStack_ac;\n  int *piStack_a8;\n  code *pcStack_a4;\n  undefined4 uStack_98;\n  int *piStack_94;\n  undefined4 local_90;\n  undefined *local_88;\n  int local_80;\n  undefined4 *local_7c;\n  int local_74;\n  undefined4 *local_70;\n  int *local_6c;\n  int local_68;\n  undefined4 local_64;\n  undefined4 local_50;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  undefined2 local_28;\n  int local_24;\n  \n  puVar1 = PTR___stack_chk_guard_0015ba2c;\n  iVar16 = *param_1;\n  local_24 = *(int *)PTR___stack_chk_guard_0015ba2c;\n  piVar5 = param_4;\n  (*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();\n  piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f);\n  if (0 < (int)param_4) {\n    param_4 = (int *)((int)param_4 + (int)piVar13);\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);\n  }\n  local_28 = 0;\n  local_38 = 0;\n  local_3c = 0;\n  local_34 = 0;\n  local_2c = 0;\n  local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360);\n  if (param_1[5] != 0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);\n  }\n  puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c);\n  if (param_1[4] != 0) {\n    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);\n  }\n  puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c);\n  if (puVar4 == (undefined *)0x0) {\nLAB_000f7410:\n    iVar3 = 7;\n  }\n  else {\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }\n  if (local_24 == *(int *)puVar1) {\n    return iVar3;\n  }\n  uVar21 = 0xf7454;\n  iVar8 = local_24;\n  puVar4 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_88 = puVar4 + 0x6c15c;\n  piVar13 = *(int **)(puVar4 + 0x645d8);\n  uVar12 = *(undefined4 *)(iVar8 + 0x24);\n  iVar10 = *(int *)(iVar8 + 0x20);\n  local_7c = (undefined4 *)*piVar13;\n  local_80 = 0;\n  local_74 = iVar3;\n  local_70 = param_5;\n  local_6c = param_1;\n  local_68 = iVar16;\n  local_64 = uVar21;\n  iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10);\n  if (iVar16 == 0) {\n    iVar3 = 7;\n    (**(code **)(local_88 + -0x7f90))(0);\nLAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  else {\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  if (local_7c == (undefined4 *)*piVar13) {\n    return iVar3;\n  }\n  pcVar19 = *(code **)(local_88 + -0x7ba0);\n  pcVar22 = FUN_000f75ec;\n  puVar9 = local_7c;\n  (*pcVar19)();\n  puVar11 = &uStack_98;\n  piVar14 = *(int **)(pcVar19 + 0x64440);\n  iStack_b8 = 0;\n  iStack_b4 = *piVar14;\n  iStack_b0 = iVar8;\n  iStack_ac = iVar3;\n  piStack_a8 = piVar13;\n  pcStack_a4 = pcVar22;\n  uStack_98 = uVar12;\n  piStack_94 = piVar5;\n  puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11);\n  if (puVar9[10] == 0) {\n    if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }\n  }\n  (**(code **)(pcVar19 + 0x64034))(puVar6);\n  if (iStack_b4 == *piVar14) {\n    return iStack_b8;\n  }\n  pcVar22 = *(code **)(pcVar19 + 0x64424);\n  iVar16 = iStack_b4;\n  (*pcVar22)();\n  puStack_f8 = puVar1;\n  piVar13 = *(int **)(pcVar22 + 0x6435c);\n  iStack_11c = 0;\n  iStack_10c = *piVar13;\n  piStack_108 = piVar14;\n  puStack_104 = puVar6;\n  puStack_100 = puVar9;\n  puStack_fc = puVar2;\n  piStack_f4 = param_4;\n  puStack_f0 = unaff_s6;\n  iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);\n    if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    uVar12 = 0xffffffff;\n  }\n  else {\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }\njoined_r0x000f7930:\n  if (iStack_11c == 0) {\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }\nLAB_000f778c:\n  (**(code **)(pcVar22 + 0x63f50))(iVar3);\n  if (iStack_10c == *piVar13) {\n    return iStack_11c;\n  }\n  (**(code **)(pcVar22 + 0x64340))();\n  iVar16 = FUN_000f6c34();\n  return iVar16;\n}" (primitive_type "int") (function_declarator "FUN_000f7210(int *param_1,undefined4 param_2,undefined4 param_3,int *param_4,undefined4 *param_5\n                )" (identifier "FUN_000f7210") (parameter_list "(int *param_1,undefined4 param_2,undefined4 param_3,int *param_4,undefined4 *param_5\n                )" (( "(") (parameter_declaration "int *param_1" (primitive_type "int") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "undefined4 param_2" (type_identifier "undefined4") (identifier "param_2")) (, ",") (parameter_declaration "undefined4 param_3" (type_identifier "undefined4") (identifier "param_3")) (, ",") (parameter_declaration "int *param_4" (primitive_type "int") (pointer_declarator "*param_4" (* "*") (identifier "param_4"))) (, ",") (parameter_declaration "undefined4 *param_5" (type_identifier "undefined4") (pointer_declarator "*param_5" (* "*") (identifier "param_5"))) () ")"))) (compound_statement "{\n  undefined *puVar1;\n  undefined *puVar2;\n  int iVar3;\n  undefined *puVar4;\n  int *piVar5;\n  undefined4 *puVar6;\n  char *pcVar7;\n  int iVar8;\n  undefined4 *puVar9;\n  int iVar10;\n  undefined4 *puVar11;\n  undefined4 uVar12;\n  int *piVar13;\n  int *piVar14;\n  code *pcVar15;\n  int iVar16;\n  int iVar17;\n  undefined *unaff_s6;\n  int iVar18;\n  code *pcVar19;\n  code *pcVar20;\n  undefined4 uVar21;\n  code *pcVar22;\n  int iStack_11c;\n  int iStack_118;\n  undefined4 uStack_114;\n  undefined4 uStack_110;\n  int iStack_10c;\n  int *piStack_108;\n  undefined4 *puStack_104;\n  undefined4 *puStack_100;\n  undefined *puStack_fc;\n  undefined *puStack_f8;\n  int *piStack_f4;\n  undefined *puStack_f0;\n  int iStack_d0;\n  int iStack_cc;\n  int iStack_b8;\n  int iStack_b4;\n  int iStack_b0;\n  int iStack_ac;\n  int *piStack_a8;\n  code *pcStack_a4;\n  undefined4 uStack_98;\n  int *piStack_94;\n  undefined4 local_90;\n  undefined *local_88;\n  int local_80;\n  undefined4 *local_7c;\n  int local_74;\n  undefined4 *local_70;\n  int *local_6c;\n  int local_68;\n  undefined4 local_64;\n  undefined4 local_50;\n  undefined4 local_3c;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  undefined2 local_28;\n  int local_24;\n  \n  puVar1 = PTR___stack_chk_guard_0015ba2c;\n  iVar16 = *param_1;\n  local_24 = *(int *)PTR___stack_chk_guard_0015ba2c;\n  piVar5 = param_4;\n  (*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();\n  piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f);\n  if (0 < (int)param_4) {\n    param_4 = (int *)((int)param_4 + (int)piVar13);\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);\n  }\n  local_28 = 0;\n  local_38 = 0;\n  local_3c = 0;\n  local_34 = 0;\n  local_2c = 0;\n  local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360);\n  if (param_1[5] != 0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);\n  }\n  puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10);\n  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c);\n  if (param_1[4] != 0) {\n    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);\n  }\n  puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c);\n  if (puVar4 == (undefined *)0x0) {\nLAB_000f7410:\n    iVar3 = 7;\n  }\n  else {\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }\n  if (local_24 == *(int *)puVar1) {\n    return iVar3;\n  }\n  uVar21 = 0xf7454;\n  iVar8 = local_24;\n  puVar4 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  local_88 = puVar4 + 0x6c15c;\n  piVar13 = *(int **)(puVar4 + 0x645d8);\n  uVar12 = *(undefined4 *)(iVar8 + 0x24);\n  iVar10 = *(int *)(iVar8 + 0x20);\n  local_7c = (undefined4 *)*piVar13;\n  local_80 = 0;\n  local_74 = iVar3;\n  local_70 = param_5;\n  local_6c = param_1;\n  local_68 = iVar16;\n  local_64 = uVar21;\n  iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10);\n  if (iVar16 == 0) {\n    iVar3 = 7;\n    (**(code **)(local_88 + -0x7f90))(0);\nLAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  else {\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  if (local_7c == (undefined4 *)*piVar13) {\n    return iVar3;\n  }\n  pcVar19 = *(code **)(local_88 + -0x7ba0);\n  pcVar22 = FUN_000f75ec;\n  puVar9 = local_7c;\n  (*pcVar19)();\n  puVar11 = &uStack_98;\n  piVar14 = *(int **)(pcVar19 + 0x64440);\n  iStack_b8 = 0;\n  iStack_b4 = *piVar14;\n  iStack_b0 = iVar8;\n  iStack_ac = iVar3;\n  piStack_a8 = piVar13;\n  pcStack_a4 = pcVar22;\n  uStack_98 = uVar12;\n  piStack_94 = piVar5;\n  puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11);\n  if (puVar9[10] == 0) {\n    if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }\n  }\n  (**(code **)(pcVar19 + 0x64034))(puVar6);\n  if (iStack_b4 == *piVar14) {\n    return iStack_b8;\n  }\n  pcVar22 = *(code **)(pcVar19 + 0x64424);\n  iVar16 = iStack_b4;\n  (*pcVar22)();\n  puStack_f8 = puVar1;\n  piVar13 = *(int **)(pcVar22 + 0x6435c);\n  iStack_11c = 0;\n  iStack_10c = *piVar13;\n  piStack_108 = piVar14;\n  puStack_104 = puVar6;\n  puStack_100 = puVar9;\n  puStack_fc = puVar2;\n  piStack_f4 = param_4;\n  puStack_f0 = unaff_s6;\n  iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12);\n  if (iVar3 == 0) {\n    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);\n    if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    uVar12 = 0xffffffff;\n  }\n  else {\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }\njoined_r0x000f7930:\n  if (iStack_11c == 0) {\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }\nLAB_000f778c:\n  (**(code **)(pcVar22 + 0x63f50))(iVar3);\n  if (iStack_10c == *piVar13) {\n    return iStack_11c;\n  }\n  (**(code **)(pcVar22 + 0x64340))();\n  iVar16 = FUN_000f6c34();\n  return iVar16;\n}" ({ "{") (declaration "undefined *puVar1;" (type_identifier "undefined") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "undefined *puVar2;" (type_identifier "undefined") (pointer_declarator "*puVar2" (* "*") (identifier "puVar2")) (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "undefined *puVar4;" (type_identifier "undefined") (pointer_declarator "*puVar4" (* "*") (identifier "puVar4")) (; ";")) (declaration "int *piVar5;" (primitive_type "int") (pointer_declarator "*piVar5" (* "*") (identifier "piVar5")) (; ";")) (declaration "undefined4 *puVar6;" (type_identifier "undefined4") (pointer_declarator "*puVar6" (* "*") (identifier "puVar6")) (; ";")) (declaration "char *pcVar7;" (primitive_type "char") (pointer_declarator "*pcVar7" (* "*") (identifier "pcVar7")) (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "undefined4 *puVar9;" (type_identifier "undefined4") (pointer_declarator "*puVar9" (* "*") (identifier "puVar9")) (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "undefined4 *puVar11;" (type_identifier "undefined4") (pointer_declarator "*puVar11" (* "*") (identifier "puVar11")) (; ";")) (declaration "undefined4 uVar12;" (type_identifier "undefined4") (identifier "uVar12") (; ";")) (declaration "int *piVar13;" (primitive_type "int") (pointer_declarator "*piVar13" (* "*") (identifier "piVar13")) (; ";")) (declaration "int *piVar14;" (primitive_type "int") (pointer_declarator "*piVar14" (* "*") (identifier "piVar14")) (; ";")) (declaration "code *pcVar15;" (type_identifier "code") (pointer_declarator "*pcVar15" (* "*") (identifier "pcVar15")) (; ";")) (declaration "int iVar16;" (primitive_type "int") (identifier "iVar16") (; ";")) (declaration "int iVar17;" (primitive_type "int") (identifier "iVar17") (; ";")) (declaration "undefined *unaff_s6;" (type_identifier "undefined") (pointer_declarator "*unaff_s6" (* "*") (identifier "unaff_s6")) (; ";")) (declaration "int iVar18;" (primitive_type "int") (identifier "iVar18") (; ";")) (declaration "code *pcVar19;" (type_identifier "code") (pointer_declarator "*pcVar19" (* "*") (identifier "pcVar19")) (; ";")) (declaration "code *pcVar20;" (type_identifier "code") (pointer_declarator "*pcVar20" (* "*") (identifier "pcVar20")) (; ";")) (declaration "undefined4 uVar21;" (type_identifier "undefined4") (identifier "uVar21") (; ";")) (declaration "code *pcVar22;" (type_identifier "code") (pointer_declarator "*pcVar22" (* "*") (identifier "pcVar22")) (; ";")) (declaration "int iStack_11c;" (primitive_type "int") (identifier "iStack_11c") (; ";")) (declaration "int iStack_118;" (primitive_type "int") (identifier "iStack_118") (; ";")) (declaration "undefined4 uStack_114;" (type_identifier "undefined4") (identifier "uStack_114") (; ";")) (declaration "undefined4 uStack_110;" (type_identifier "undefined4") (identifier "uStack_110") (; ";")) (declaration "int iStack_10c;" (primitive_type "int") (identifier "iStack_10c") (; ";")) (declaration "int *piStack_108;" (primitive_type "int") (pointer_declarator "*piStack_108" (* "*") (identifier "piStack_108")) (; ";")) (declaration "undefined4 *puStack_104;" (type_identifier "undefined4") (pointer_declarator "*puStack_104" (* "*") (identifier "puStack_104")) (; ";")) (declaration "undefined4 *puStack_100;" (type_identifier "undefined4") (pointer_declarator "*puStack_100" (* "*") (identifier "puStack_100")) (; ";")) (declaration "undefined *puStack_fc;" (type_identifier "undefined") (pointer_declarator "*puStack_fc" (* "*") (identifier "puStack_fc")) (; ";")) (declaration "undefined *puStack_f8;" (type_identifier "undefined") (pointer_declarator "*puStack_f8" (* "*") (identifier "puStack_f8")) (; ";")) (declaration "int *piStack_f4;" (primitive_type "int") (pointer_declarator "*piStack_f4" (* "*") (identifier "piStack_f4")) (; ";")) (declaration "undefined *puStack_f0;" (type_identifier "undefined") (pointer_declarator "*puStack_f0" (* "*") (identifier "puStack_f0")) (; ";")) (declaration "int iStack_d0;" (primitive_type "int") (identifier "iStack_d0") (; ";")) (declaration "int iStack_cc;" (primitive_type "int") (identifier "iStack_cc") (; ";")) (declaration "int iStack_b8;" (primitive_type "int") (identifier "iStack_b8") (; ";")) (declaration "int iStack_b4;" (primitive_type "int") (identifier "iStack_b4") (; ";")) (declaration "int iStack_b0;" (primitive_type "int") (identifier "iStack_b0") (; ";")) (declaration "int iStack_ac;" (primitive_type "int") (identifier "iStack_ac") (; ";")) (declaration "int *piStack_a8;" (primitive_type "int") (pointer_declarator "*piStack_a8" (* "*") (identifier "piStack_a8")) (; ";")) (declaration "code *pcStack_a4;" (type_identifier "code") (pointer_declarator "*pcStack_a4" (* "*") (identifier "pcStack_a4")) (; ";")) (declaration "undefined4 uStack_98;" (type_identifier "undefined4") (identifier "uStack_98") (; ";")) (declaration "int *piStack_94;" (primitive_type "int") (pointer_declarator "*piStack_94" (* "*") (identifier "piStack_94")) (; ";")) (declaration "undefined4 local_90;" (type_identifier "undefined4") (identifier "local_90") (; ";")) (declaration "undefined *local_88;" (type_identifier "undefined") (pointer_declarator "*local_88" (* "*") (identifier "local_88")) (; ";")) (declaration "int local_80;" (primitive_type "int") (identifier "local_80") (; ";")) (declaration "undefined4 *local_7c;" (type_identifier "undefined4") (pointer_declarator "*local_7c" (* "*") (identifier "local_7c")) (; ";")) (declaration "int local_74;" (primitive_type "int") (identifier "local_74") (; ";")) (declaration "undefined4 *local_70;" (type_identifier "undefined4") (pointer_declarator "*local_70" (* "*") (identifier "local_70")) (; ";")) (declaration "int *local_6c;" (primitive_type "int") (pointer_declarator "*local_6c" (* "*") (identifier "local_6c")) (; ";")) (declaration "int local_68;" (primitive_type "int") (identifier "local_68") (; ";")) (declaration "undefined4 local_64;" (type_identifier "undefined4") (identifier "local_64") (; ";")) (declaration "undefined4 local_50;" (type_identifier "undefined4") (identifier "local_50") (; ";")) (declaration "undefined4 local_3c;" (type_identifier "undefined4") (identifier "local_3c") (; ";")) (declaration "undefined4 local_38;" (type_identifier "undefined4") (identifier "local_38") (; ";")) (declaration "undefined4 local_34;" (type_identifier "undefined4") (identifier "local_34") (; ";")) (declaration "undefined4 local_30;" (type_identifier "undefined4") (identifier "local_30") (; ";")) (declaration "undefined4 local_2c;" (type_identifier "undefined4") (identifier "local_2c") (; ";")) (declaration "undefined2 local_28;" (type_identifier "undefined2") (identifier "local_28") (; ";")) (declaration "int local_24;" (primitive_type "int") (identifier "local_24") (; ";")) (expression_statement "puVar1 = PTR___stack_chk_guard_0015ba2c;" (assignment_expression "puVar1 = PTR___stack_chk_guard_0015ba2c" (identifier "puVar1") (= "=") (identifier "PTR___stack_chk_guard_0015ba2c")) (; ";")) (expression_statement "iVar16 = *param_1;" (assignment_expression "iVar16 = *param_1" (identifier "iVar16") (= "=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (; ";")) (expression_statement "local_24 = *(int *)PTR___stack_chk_guard_0015ba2c;" (assignment_expression "local_24 = *(int *)PTR___stack_chk_guard_0015ba2c" (identifier "local_24") (= "=") (pointer_expression "*(int *)PTR___stack_chk_guard_0015ba2c" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_0015ba2c" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_0015ba2c")))) (; ";")) (expression_statement "piVar5 = param_4;" (assignment_expression "piVar5 = param_4" (identifier "piVar5") (= "=") (identifier "param_4")) (; ";")) (expression_statement "(*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();" (call_expression "(*(code *)(PTR_LAB_0015b6f8 + 0x1b68))()" (parenthesized_expression "(*(code *)(PTR_LAB_0015b6f8 + 0x1b68))" (( "(") (pointer_expression "*(code *)(PTR_LAB_0015b6f8 + 0x1b68)" (* "*") (cast_expression "(code *)(PTR_LAB_0015b6f8 + 0x1b68)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0015b6f8 + 0x1b68)" (( "(") (binary_expression "PTR_LAB_0015b6f8 + 0x1b68" (identifier "PTR_LAB_0015b6f8") (+ "+") (number_literal "0x1b68")) () ")")))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f);" (assignment_expression "piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f)" (identifier "piVar13") (= "=") (cast_expression "(int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (unary_expression "-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f)" (- "-") (parenthesized_expression "((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f)" (( "(") (binary_expression "(int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f" (cast_expression "(int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a)" (( "(") (binary_expression "(*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a" (parenthesized_expression "(*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20)" (( "(") (binary_expression "*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20" (pointer_expression "*(byte *)(*(int *)(iVar16 + 0x10) + 5)" (* "*") (cast_expression "(byte *)(*(int *)(iVar16 + 0x10) + 5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(iVar16 + 0x10) + 5)" (( "(") (binary_expression "*(int *)(iVar16 + 0x10) + 5" (pointer_expression "*(int *)(iVar16 + 0x10)" (* "*") (cast_expression "(int *)(iVar16 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0x10)" (( "(") (binary_expression "iVar16 + 0x10" (identifier "iVar16") (+ "+") (number_literal "0x10")) () ")")))) (+ "+") (number_literal "5")) () ")")))) (^ "^") (number_literal "0x20")) () ")")) (<< "<<") (number_literal "0x1a")) () ")"))) (>> ">>") (number_literal "0x1f")) () ")"))))) (; ";")) (if_statement "if (0 < (int)param_4) {\n    param_4 = (int *)((int)param_4 + (int)piVar13);\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);\n  }" (if "if") (parenthesized_expression "(0 < (int)param_4)" (( "(") (binary_expression "0 < (int)param_4" (number_literal "0") (< "<") (cast_expression "(int)param_4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_4"))) () ")")) (compound_statement "{\n    param_4 = (int *)((int)param_4 + (int)piVar13);\n    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;\n    do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);\n  }" ({ "{") (expression_statement "param_4 = (int *)((int)param_4 + (int)piVar13);" (assignment_expression "param_4 = (int *)((int)param_4 + (int)piVar13)" (identifier "param_4") (= "=") (cast_expression "(int *)((int)param_4 + (int)piVar13)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)param_4 + (int)piVar13)" (( "(") (binary_expression "(int)param_4 + (int)piVar13" (cast_expression "(int)param_4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_4")) (+ "+") (cast_expression "(int)piVar13" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar13"))) () ")")))) (; ";")) (expression_statement "unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;" (assignment_expression "unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4" (identifier "unaff_s6") (= "=") (binary_expression "PTR_LAB_0015b5e8 + 0x71f4" (identifier "PTR_LAB_0015b5e8") (+ "+") (number_literal "0x71f4"))) (; ";")) (do_statement "do {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    } while (piVar13 != param_4);" (do "do") (compound_statement "{\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);\n      if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }\n      piVar13 = (int *)((int)piVar13 + 1);\n      param_5 = param_5 + 1;\n    }" ({ "{") (expression_statement "puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);" (assignment_expression "puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5)" (identifier "puVar2") (= "=") (cast_expression "(undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5)" (parenthesized_expression "(*(code *)PTR_sqlite3_value_text_0015b614)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_value_text_0015b614" (* "*") (cast_expression "(code *)PTR_sqlite3_value_text_0015b614" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_value_text_0015b614"))) () ")")) (argument_list "(*param_5)" (( "(") (pointer_expression "*param_5" (* "*") (identifier "param_5")) () ")"))))) (; ";")) (if_statement "if (puVar2 != (undefined *)0x0) {\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }" (if "if") (parenthesized_expression "(puVar2 != (undefined *)0x0)" (( "(") (binary_expression "puVar2 != (undefined *)0x0" (identifier "puVar2") (!= "!=") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);\n        param_1[(int)(piVar13 + 1)] = iVar3;\n        if (iVar3 == 0) goto LAB_000f7410;\n      }" ({ "{") (expression_statement "iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);" (assignment_expression "iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6)" (identifier "iVar3") (= "=") (call_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6)" (parenthesized_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_mprintf_0015b628" (* "*") (cast_expression "(code *)PTR_sqlite3_mprintf_0015b628" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_mprintf_0015b628"))) () ")")) (argument_list "(unaff_s6)" (( "(") (identifier "unaff_s6") () ")")))) (; ";")) (expression_statement "param_1[(int)(piVar13 + 1)] = iVar3;" (assignment_expression "param_1[(int)(piVar13 + 1)] = iVar3" (subscript_expression "param_1[(int)(piVar13 + 1)]" (identifier "param_1") ([ "[") (cast_expression "(int)(piVar13 + 1)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(piVar13 + 1)" (( "(") (binary_expression "piVar13 + 1" (identifier "piVar13") (+ "+") (number_literal "1")) () ")"))) (] "]")) (= "=") (identifier "iVar3")) (; ";")) (if_statement "if (iVar3 == 0) goto LAB_000f7410;" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000f7410;" (goto "goto") (statement_identifier "LAB_000f7410") (; ";"))) (} "}"))) (expression_statement "piVar13 = (int *)((int)piVar13 + 1);" (assignment_expression "piVar13 = (int *)((int)piVar13 + 1)" (identifier "piVar13") (= "=") (cast_expression "(int *)((int)piVar13 + 1)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar13 + 1)" (( "(") (binary_expression "(int)piVar13 + 1" (cast_expression "(int)piVar13" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar13")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "param_5 = param_5 + 1;" (assignment_expression "param_5 = param_5 + 1" (identifier "param_5") (= "=") (binary_expression "param_5 + 1" (identifier "param_5") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(piVar13 != param_4)" (( "(") (binary_expression "piVar13 != param_4" (identifier "piVar13") (!= "!=") (identifier "param_4")) () ")")) (; ";")) (} "}"))) (expression_statement "local_28 = 0;" (assignment_expression "local_28 = 0" (identifier "local_28") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_38 = 0;" (assignment_expression "local_38 = 0" (identifier "local_38") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_3c = 0;" (assignment_expression "local_3c = 0" (identifier "local_3c") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_34 = 0;" (assignment_expression "local_34 = 0" (identifier "local_34") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_2c = 0;" (assignment_expression "local_2c = 0" (identifier "local_2c") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70);" (assignment_expression "local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70)" (identifier "local_30") (= "=") (pointer_expression "*(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70)" (* "*") (cast_expression "(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(iVar16 + 0xc) + 0x70)" (( "(") (binary_expression "*(int *)(iVar16 + 0xc) + 0x70" (pointer_expression "*(int *)(iVar16 + 0xc)" (* "*") (cast_expression "(int *)(iVar16 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0xc)" (( "(") (binary_expression "iVar16 + 0xc" (identifier "iVar16") (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "0x70")) () ")"))))) (; ";")) (expression_statement "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360);" (call_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_str_appendall_0015b7c4" (* "*") (cast_expression "(code *)PTR_sqlite3_str_appendall_0015b7c4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_str_appendall_0015b7c4"))) () ")")) (argument_list "(&local_3c,PTR_UINT_0015b5fc + -0x5360)" (( "(") (pointer_expression "&local_3c" (& "&") (identifier "local_3c")) (, ",") (binary_expression "PTR_UINT_0015b5fc + -0x5360" (identifier "PTR_UINT_0015b5fc") (+ "+") (number_literal "-0x5360")) () ")"))) (; ";")) (if_statement "if (param_1[5] != 0) {\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);\n  }" (if "if") (parenthesized_expression "(param_1[5] != 0)" (( "(") (binary_expression "param_1[5] != 0" (subscript_expression "param_1[5]" (identifier "param_1") ([ "[") (number_literal "5") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);\n  }" ({ "{") (expression_statement "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);" (call_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_str_appendf_0015b810" (* "*") (cast_expression "(code *)PTR_sqlite3_str_appendf_0015b810" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_str_appendf_0015b810"))) () ")")) (argument_list "(&local_3c,PTR_UINT_0015b5fc + -0x5358)" (( "(") (pointer_expression "&local_3c" (& "&") (identifier "local_3c")) (, ",") (binary_expression "PTR_UINT_0015b5fc + -0x5358" (identifier "PTR_UINT_0015b5fc") (+ "+") (number_literal "-0x5358")) () ")"))) (; ";")) (} "}"))) (expression_statement "puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10);" (assignment_expression "puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10)" (identifier "puVar2") (= "=") (cast_expression "(undefined *)**(undefined4 **)(iVar16 + 0x10)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(iVar16 + 0x10)" (* "*") (pointer_expression "*(undefined4 **)(iVar16 + 0x10)" (* "*") (cast_expression "(undefined4 **)(iVar16 + 0x10)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar16 + 0x10)" (( "(") (binary_expression "iVar16 + 0x10" (identifier "iVar16") (+ "+") (number_literal "0x10")) () ")"))))))) (; ";")) (expression_statement "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c);" (call_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendall_0015b7c4)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_str_appendall_0015b7c4" (* "*") (cast_expression "(code *)PTR_sqlite3_str_appendall_0015b7c4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_str_appendall_0015b7c4"))) () ")")) (argument_list "(&local_3c)" (( "(") (pointer_expression "&local_3c" (& "&") (identifier "local_3c")) () ")"))) (; ";")) (if_statement "if (param_1[4] != 0) {\n    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);\n  }" (if "if") (parenthesized_expression "(param_1[4] != 0)" (( "(") (binary_expression "param_1[4] != 0" (subscript_expression "param_1[4]" (identifier "param_1") ([ "[") (number_literal "4") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;\n    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);\n  }" ({ "{") (expression_statement "puVar2 = PTR_LAB_0015b5e8 + 0x55c4;" (assignment_expression "puVar2 = PTR_LAB_0015b5e8 + 0x55c4" (identifier "puVar2") (= "=") (binary_expression "PTR_LAB_0015b5e8 + 0x55c4" (identifier "PTR_LAB_0015b5e8") (+ "+") (number_literal "0x55c4"))) (; ";")) (expression_statement "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);" (call_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c)" (parenthesized_expression "(*(code *)PTR_sqlite3_str_appendf_0015b810)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_str_appendf_0015b810" (* "*") (cast_expression "(code *)PTR_sqlite3_str_appendf_0015b810" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_str_appendf_0015b810"))) () ")")) (argument_list "(&local_3c)" (( "(") (pointer_expression "&local_3c" (& "&") (identifier "local_3c")) () ")"))) (; ";")) (} "}"))) (expression_statement "puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c);" (assignment_expression "puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c)" (identifier "puVar4") (= "=") (cast_expression "(undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c)" (parenthesized_expression "(*(code *)(PTR_LAB_0015b6d8 + -0x2478))" (( "(") (pointer_expression "*(code *)(PTR_LAB_0015b6d8 + -0x2478)" (* "*") (cast_expression "(code *)(PTR_LAB_0015b6d8 + -0x2478)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0015b6d8 + -0x2478)" (( "(") (binary_expression "PTR_LAB_0015b6d8 + -0x2478" (identifier "PTR_LAB_0015b6d8") (+ "+") (number_literal "-0x2478")) () ")")))) () ")")) (argument_list "(&local_3c)" (( "(") (pointer_expression "&local_3c" (& "&") (identifier "local_3c")) () ")"))))) (; ";")) (if_statement "if (puVar4 == (undefined *)0x0) {\nLAB_000f7410:\n    iVar3 = 7;\n  }\n  else {\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }" (if "if") (parenthesized_expression "(puVar4 == (undefined *)0x0)" (( "(") (binary_expression "puVar4 == (undefined *)0x0" (identifier "puVar4") (== "==") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000f7410:\n    iVar3 = 7;\n  }" ({ "{") (labeled_statement "LAB_000f7410:\n    iVar3 = 7;" (statement_identifier "LAB_000f7410") (: ":") (expression_statement "iVar3 = 7;" (assignment_expression "iVar3 = 7" (identifier "iVar3") (= "=") (number_literal "7")) (; ";"))) (} "}")) (else_clause "else {\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }" (else "else") (compound_statement "{\n    piVar5 = param_1 + 1;\n    local_50 = 0;\n    puVar2 = puVar4;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);\n    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);\n    if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }\n  }" ({ "{") (expression_statement "piVar5 = param_1 + 1;" (assignment_expression "piVar5 = param_1 + 1" (identifier "piVar5") (= "=") (binary_expression "param_1 + 1" (identifier "param_1") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "local_50 = 0;" (assignment_expression "local_50 = 0" (identifier "local_50") (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar2 = puVar4;" (assignment_expression "puVar2 = puVar4" (identifier "puVar2") (= "=") (identifier "puVar4")) (; ";")) (expression_statement "iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);" (assignment_expression "iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff)" (identifier "iVar3") (= "=") (call_expression "sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff)" (identifier "sqlite3_prepare_v2") (argument_list "(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff)" (( "(") (pointer_expression "*(undefined4 *)(iVar16 + 0xc)" (* "*") (cast_expression "(undefined4 *)(iVar16 + 0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0xc)" (( "(") (binary_expression "iVar16 + 0xc" (identifier "iVar16") (+ "+") (number_literal "0xc")) () ")")))) (, ",") (identifier "puVar4") (, ",") (number_literal "0xffffffff") () ")")))) (; ";")) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(puVar4);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(puVar4)" (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 "(puVar4)" (( "(") (identifier "puVar4") () ")"))) (; ";")) (if_statement "if (iVar3 == 0) {\n      iVar3 = FUN_000ddfb0(param_1);\n    }\n    else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      iVar3 = FUN_000ddfb0(param_1);\n    }" ({ "{") (expression_statement "iVar3 = FUN_000ddfb0(param_1);" (assignment_expression "iVar3 = FUN_000ddfb0(param_1)" (identifier "iVar3") (= "=") (call_expression "FUN_000ddfb0(param_1)" (identifier "FUN_000ddfb0") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (} "}")) (else_clause "else {\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }" (else "else") (compound_statement "{\n      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));\n      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);\n      *(undefined4 *)(iVar16 + 8) = uVar12;\n    }" ({ "{") (expression_statement "puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));" (assignment_expression "puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc))" (identifier "puVar2") (= "=") (cast_expression "(undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc))" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc))" (parenthesized_expression "(*(code *)PTR_sqlite3_errmsg_0015b624)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_errmsg_0015b624" (* "*") (cast_expression "(code *)PTR_sqlite3_errmsg_0015b624" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_errmsg_0015b624"))) () ")")) (argument_list "(*(undefined4 *)(iVar16 + 0xc))" (( "(") (pointer_expression "*(undefined4 *)(iVar16 + 0xc)" (* "*") (cast_expression "(undefined4 *)(iVar16 + 0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 0xc)" (( "(") (binary_expression "iVar16 + 0xc" (identifier "iVar16") (+ "+") (number_literal "0xc")) () ")")))) () ")"))))) (; ";")) (expression_statement "uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);" (assignment_expression "uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4)" (identifier "uVar12") (= "=") (call_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4)" (parenthesized_expression "(*(code *)PTR_sqlite3_mprintf_0015b628)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_mprintf_0015b628" (* "*") (cast_expression "(code *)PTR_sqlite3_mprintf_0015b628" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_mprintf_0015b628"))) () ")")) (argument_list "(PTR_LAB_0015b5e8 + 0x71f4)" (( "(") (binary_expression "PTR_LAB_0015b5e8 + 0x71f4" (identifier "PTR_LAB_0015b5e8") (+ "+") (number_literal "0x71f4")) () ")")))) (; ";")) (expression_statement "*(undefined4 *)(iVar16 + 8) = uVar12;" (assignment_expression "*(undefined4 *)(iVar16 + 8) = uVar12" (pointer_expression "*(undefined4 *)(iVar16 + 8)" (* "*") (cast_expression "(undefined4 *)(iVar16 + 8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar16 + 8)" (( "(") (binary_expression "iVar16 + 8" (identifier "iVar16") (+ "+") (number_literal "8")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (} "}")))) (} "}")))) (if_statement "if (local_24 == *(int *)puVar1) {\n    return iVar3;\n  }" (if "if") (parenthesized_expression "(local_24 == *(int *)puVar1)" (( "(") (binary_expression "local_24 == *(int *)puVar1" (identifier "local_24") (== "==") (pointer_expression "*(int *)puVar1" (* "*") (cast_expression "(int *)puVar1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1")))) () ")")) (compound_statement "{\n    return iVar3;\n  }" ({ "{") (return_statement "return iVar3;" (return "return") (identifier "iVar3") (; ";")) (} "}"))) (expression_statement "uVar21 = 0xf7454;" (assignment_expression "uVar21 = 0xf7454" (identifier "uVar21") (= "=") (number_literal "0xf7454")) (; ";")) (expression_statement "iVar8 = local_24;" (assignment_expression "iVar8 = local_24" (identifier "iVar8") (= "=") (identifier "local_24")) (; ";")) (expression_statement "puVar4 = PTR___stack_chk_fail_0015ba10;" (assignment_expression "puVar4 = PTR___stack_chk_fail_0015ba10" (identifier "puVar4") (= "=") (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_88 = puVar4 + 0x6c15c;" (assignment_expression "local_88 = puVar4 + 0x6c15c" (identifier "local_88") (= "=") (binary_expression "puVar4 + 0x6c15c" (identifier "puVar4") (+ "+") (number_literal "0x6c15c"))) (; ";")) (expression_statement "piVar13 = *(int **)(puVar4 + 0x645d8);" (assignment_expression "piVar13 = *(int **)(puVar4 + 0x645d8)" (identifier "piVar13") (= "=") (pointer_expression "*(int **)(puVar4 + 0x645d8)" (* "*") (cast_expression "(int **)(puVar4 + 0x645d8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar4 + 0x645d8)" (( "(") (binary_expression "puVar4 + 0x645d8" (identifier "puVar4") (+ "+") (number_literal "0x645d8")) () ")"))))) (; ";")) (expression_statement "uVar12 = *(undefined4 *)(iVar8 + 0x24);" (assignment_expression "uVar12 = *(undefined4 *)(iVar8 + 0x24)" (identifier "uVar12") (= "=") (pointer_expression "*(undefined4 *)(iVar8 + 0x24)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x24)" (( "(") (binary_expression "iVar8 + 0x24" (identifier "iVar8") (+ "+") (number_literal "0x24")) () ")"))))) (; ";")) (expression_statement "iVar10 = *(int *)(iVar8 + 0x20);" (assignment_expression "iVar10 = *(int *)(iVar8 + 0x20)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)(iVar8 + 0x20)" (* "*") (cast_expression "(int *)(iVar8 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x20)" (( "(") (binary_expression "iVar8 + 0x20" (identifier "iVar8") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (expression_statement "local_7c = (undefined4 *)*piVar13;" (assignment_expression "local_7c = (undefined4 *)*piVar13" (identifier "local_7c") (= "=") (cast_expression "(undefined4 *)*piVar13" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar13" (* "*") (identifier "piVar13")))) (; ";")) (expression_statement "local_80 = 0;" (assignment_expression "local_80 = 0" (identifier "local_80") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_74 = iVar3;" (assignment_expression "local_74 = iVar3" (identifier "local_74") (= "=") (identifier "iVar3")) (; ";")) (expression_statement "local_70 = param_5;" (assignment_expression "local_70 = param_5" (identifier "local_70") (= "=") (identifier "param_5")) (; ";")) (expression_statement "local_6c = param_1;" (assignment_expression "local_6c = param_1" (identifier "local_6c") (= "=") (identifier "param_1")) (; ";")) (expression_statement "local_68 = iVar16;" (assignment_expression "local_68 = iVar16" (identifier "local_68") (= "=") (identifier "iVar16")) (; ";")) (expression_statement "local_64 = uVar21;" (assignment_expression "local_64 = uVar21" (identifier "local_64") (= "=") (identifier "uVar21")) (; ";")) (expression_statement "iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10);" (assignment_expression "iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10)" (identifier "iVar16") (= "=") (call_expression "(**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10)" (parenthesized_expression "(**(code **)(puVar4 + 0x641d4))" (( "(") (pointer_expression "**(code **)(puVar4 + 0x641d4)" (* "*") (pointer_expression "*(code **)(puVar4 + 0x641d4)" (* "*") (cast_expression "(code **)(puVar4 + 0x641d4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar4 + 0x641d4)" (( "(") (binary_expression "puVar4 + 0x641d4" (identifier "puVar4") (+ "+") (number_literal "0x641d4")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10)" (( "(") (binary_expression "*(int *)(puVar4 + 0x641a8) + -0x5354" (pointer_expression "*(int *)(puVar4 + 0x641a8)" (* "*") (cast_expression "(int *)(puVar4 + 0x641a8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar4 + 0x641a8)" (( "(") (binary_expression "puVar4 + 0x641a8" (identifier "puVar4") (+ "+") (number_literal "0x641a8")) () ")")))) (+ "+") (number_literal "-0x5354")) (, ",") (identifier "iVar10") () ")")))) (; ";")) (if_statement "if (iVar16 == 0) {\n    iVar3 = 7;\n    (**(code **)(local_88 + -0x7f90))(0);\nLAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }\n  else {\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }" (if "if") (parenthesized_expression "(iVar16 == 0)" (( "(") (binary_expression "iVar16 == 0" (identifier "iVar16") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar3 = 7;\n    (**(code **)(local_88 + -0x7f90))(0);\nLAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }" ({ "{") (expression_statement "iVar3 = 7;" (assignment_expression "iVar3 = 7" (identifier "iVar3") (= "=") (number_literal "7")) (; ";")) (expression_statement "(**(code **)(local_88 + -0x7f90))(0);" (call_expression "(**(code **)(local_88 + -0x7f90))(0)" (parenthesized_expression "(**(code **)(local_88 + -0x7f90))" (( "(") (pointer_expression "**(code **)(local_88 + -0x7f90)" (* "*") (pointer_expression "*(code **)(local_88 + -0x7f90)" (* "*") (cast_expression "(code **)(local_88 + -0x7f90)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_88 + -0x7f90)" (( "(") (binary_expression "local_88 + -0x7f90" (identifier "local_88") (+ "+") (number_literal "-0x7f90")) () ")"))))) () ")")) (argument_list "(0)" (( "(") (number_literal "0") () ")"))) (; ";")) (labeled_statement "LAB_000f7558:\n    (**(code **)(local_88 + -0x7f74))(local_80);" (statement_identifier "LAB_000f7558") (: ":") (expression_statement "(**(code **)(local_88 + -0x7f74))(local_80);" (call_expression "(**(code **)(local_88 + -0x7f74))(local_80)" (parenthesized_expression "(**(code **)(local_88 + -0x7f74))" (( "(") (pointer_expression "**(code **)(local_88 + -0x7f74)" (* "*") (pointer_expression "*(code **)(local_88 + -0x7f74)" (* "*") (cast_expression "(code **)(local_88 + -0x7f74)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_88 + -0x7f74)" (( "(") (binary_expression "local_88 + -0x7f74" (identifier "local_88") (+ "+") (number_literal "-0x7f74")) () ")"))))) () ")")) (argument_list "(local_80)" (( "(") (identifier "local_80") () ")"))) (; ";"))) (} "}")) (else_clause "else {\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }" (else "else") (compound_statement "{\n    piVar5 = &local_80;\n    uVar12 = 0xffffffff;\n    local_90 = 0;\n    iVar10 = iVar16;\n    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);\n    (**(code **)(local_88 + -0x7f90))(iVar16);\n    if (iVar3 != 0) goto LAB_000f7558;\n    if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    iVar3 = 0x13;\n    (**(code **)(local_88 + -0x7f74))(local_80);\n  }" ({ "{") (expression_statement "piVar5 = &local_80;" (assignment_expression "piVar5 = &local_80" (identifier "piVar5") (= "=") (pointer_expression "&local_80" (& "&") (identifier "local_80"))) (; ";")) (expression_statement "uVar12 = 0xffffffff;" (assignment_expression "uVar12 = 0xffffffff" (identifier "uVar12") (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "local_90 = 0;" (assignment_expression "local_90 = 0" (identifier "local_90") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar10 = iVar16;" (assignment_expression "iVar10 = iVar16" (identifier "iVar10") (= "=") (identifier "iVar16")) (; ";")) (expression_statement "iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);" (assignment_expression "iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16)" (identifier "iVar3") (= "=") (call_expression "sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16)" (identifier "sqlite3_prepare_v2") (argument_list "(*(undefined4 *)(iVar8 + 0xc),iVar16)" (( "(") (pointer_expression "*(undefined4 *)(iVar8 + 0xc)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0xc)" (( "(") (binary_expression "iVar8 + 0xc" (identifier "iVar8") (+ "+") (number_literal "0xc")) () ")")))) (, ",") (identifier "iVar16") () ")")))) (; ";")) (expression_statement "(**(code **)(local_88 + -0x7f90))(iVar16);" (call_expression "(**(code **)(local_88 + -0x7f90))(iVar16)" (parenthesized_expression "(**(code **)(local_88 + -0x7f90))" (( "(") (pointer_expression "**(code **)(local_88 + -0x7f90)" (* "*") (pointer_expression "*(code **)(local_88 + -0x7f90)" (* "*") (cast_expression "(code **)(local_88 + -0x7f90)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_88 + -0x7f90)" (( "(") (binary_expression "local_88 + -0x7f90" (identifier "local_88") (+ "+") (number_literal "-0x7f90")) () ")"))))) () ")")) (argument_list "(iVar16)" (( "(") (identifier "iVar16") () ")"))) (; ";")) (if_statement "if (iVar3 != 0) goto LAB_000f7558;" (if "if") (parenthesized_expression "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000f7558;" (goto "goto") (statement_identifier "LAB_000f7558") (; ";"))) (if_statement "if (puVar2 == (undefined *)0x0) {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }\n    else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }" (if "if") (parenthesized_expression "(puVar2 == (undefined *)0x0)" (( "(") (binary_expression "puVar2 == (undefined *)0x0" (identifier "puVar2") (== "==") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }" ({ "{") (expression_statement "uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);" (assignment_expression "uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0)" (identifier "uVar12") (= "=") (call_expression "(**(code **)(local_88 + -0x7d2c))(local_80,0)" (parenthesized_expression "(**(code **)(local_88 + -0x7d2c))" (( "(") (pointer_expression "**(code **)(local_88 + -0x7d2c)" (* "*") (pointer_expression "*(code **)(local_88 + -0x7d2c)" (* "*") (cast_expression "(code **)(local_88 + -0x7d2c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_88 + -0x7d2c)" (( "(") (binary_expression "local_88 + -0x7d2c" (identifier "local_88") (+ "+") (number_literal "-0x7d2c")) () ")"))))) () ")")) (argument_list "(local_80,0)" (( "(") (identifier "local_80") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "iVar10 = *(int *)(iVar8 + 0x24);" (assignment_expression "iVar10 = *(int *)(iVar8 + 0x24)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)(iVar8 + 0x24)" (* "*") (cast_expression "(int *)(iVar8 + 0x24)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x24)" (( "(") (binary_expression "iVar8 + 0x24" (identifier "iVar8") (+ "+") (number_literal "0x24")) () ")"))))) (; ";")) (expression_statement "uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);" (assignment_expression "uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10)" (identifier "uVar21") (= "=") (call_expression "(**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10)" (parenthesized_expression "(**(code **)(local_88 + -0x7f88))" (( "(") (pointer_expression "**(code **)(local_88 + -0x7f88)" (* "*") (pointer_expression "*(code **)(local_88 + -0x7f88)" (* "*") (cast_expression "(code **)(local_88 + -0x7f88)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_88 + -0x7f88)" (( "(") (binary_expression "local_88 + -0x7f88" (identifier "local_88") (+ "+") (number_literal "-0x7f88")) () ")"))))) () ")")) (argument_list "(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10)" (( "(") (binary_expression "*(int *)(local_88 + -0x7fb4) + -0x5340" (pointer_expression "*(int *)(local_88 + -0x7fb4)" (* "*") (cast_expression "(int *)(local_88 + -0x7fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_88 + -0x7fb4)" (( "(") (binary_expression "local_88 + -0x7fb4" (identifier "local_88") (+ "+") (number_literal "-0x7fb4")) () ")")))) (+ "+") (number_literal "-0x5340")) (, ",") (identifier "iVar10") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 8) = uVar21;" (assignment_expression "*(undefined4 *)(iVar8 + 8) = uVar21" (pointer_expression "*(undefined4 *)(iVar8 + 8)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 8)" (( "(") (binary_expression "iVar8 + 8" (identifier "iVar8") (+ "+") (number_literal "8")) () ")")))) (= "=") (identifier "uVar21")) (; ";")) (} "}")) (else_clause "else {\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }" (else "else") (compound_statement "{\n      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);\n      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);\n      iVar10 = *(int *)(iVar8 + 0x24);\n      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);\n      *(undefined4 *)(iVar8 + 8) = uVar21;\n    }" ({ "{") (expression_statement "uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);" (assignment_expression "uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2)" (identifier "uVar12") (= "=") (call_expression "(**(code **)(local_88 + -0x7d2c))(local_80,puVar2)" (parenthesized_expression "(**(code **)(local_88 + -0x7d2c))" (( "(") (pointer_expression "**(code **)(local_88 + -0x7d2c)" (* "*") (pointer_expression "*(code **)(local_88 + -0x7d2c)" (* "*") (cast_expression "(code **)(local_88 + -0x7d2c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_88 + -0x7d2c)" (( "(") (binary_expression "local_88 + -0x7d2c" (identifier "local_88") (+ "+") (number_literal "-0x7d2c")) () ")"))))) () ")")) (argument_list "(local_80,puVar2)" (( "(") (identifier "local_80") (, ",") (identifier "puVar2") () ")")))) (; ";")) (expression_statement "piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);" (assignment_expression "piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1)" (identifier "piVar5") (= "=") (cast_expression "(int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1)" (parenthesized_expression "(**(code **)(local_88 + -0x7d2c))" (( "(") (pointer_expression "**(code **)(local_88 + -0x7d2c)" (* "*") (pointer_expression "*(code **)(local_88 + -0x7d2c)" (* "*") (cast_expression "(code **)(local_88 + -0x7d2c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_88 + -0x7d2c)" (( "(") (binary_expression "local_88 + -0x7d2c" (identifier "local_88") (+ "+") (number_literal "-0x7d2c")) () ")"))))) () ")")) (argument_list "(local_80,puVar2 + 1)" (( "(") (identifier "local_80") (, ",") (binary_expression "puVar2 + 1" (identifier "puVar2") (+ "+") (number_literal "1")) () ")"))))) (; ";")) (expression_statement "iVar10 = *(int *)(iVar8 + 0x24);" (assignment_expression "iVar10 = *(int *)(iVar8 + 0x24)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)(iVar8 + 0x24)" (* "*") (cast_expression "(int *)(iVar8 + 0x24)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x24)" (( "(") (binary_expression "iVar8 + 0x24" (identifier "iVar8") (+ "+") (number_literal "0x24")) () ")"))))) (; ";")) (expression_statement "uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);" (assignment_expression "uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10)" (identifier "uVar21") (= "=") (call_expression "(**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10)" (parenthesized_expression "(**(code **)(local_88 + -0x7f88))" (( "(") (pointer_expression "**(code **)(local_88 + -0x7f88)" (* "*") (pointer_expression "*(code **)(local_88 + -0x7f88)" (* "*") (cast_expression "(code **)(local_88 + -0x7f88)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_88 + -0x7f88)" (( "(") (binary_expression "local_88 + -0x7f88" (identifier "local_88") (+ "+") (number_literal "-0x7f88")) () ")"))))) () ")")) (argument_list "(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10)" (( "(") (binary_expression "*(int *)(local_88 + -0x7fb4) + -0x5320" (pointer_expression "*(int *)(local_88 + -0x7fb4)" (* "*") (cast_expression "(int *)(local_88 + -0x7fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_88 + -0x7fb4)" (( "(") (binary_expression "local_88 + -0x7fb4" (identifier "local_88") (+ "+") (number_literal "-0x7fb4")) () ")")))) (+ "+") (number_literal "-0x5320")) (, ",") (identifier "iVar10") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 8) = uVar21;" (assignment_expression "*(undefined4 *)(iVar8 + 8) = uVar21" (pointer_expression "*(undefined4 *)(iVar8 + 8)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 8)" (( "(") (binary_expression "iVar8 + 8" (identifier "iVar8") (+ "+") (number_literal "8")) () ")")))) (= "=") (identifier "uVar21")) (; ";")) (} "}")))) (expression_statement "iVar3 = 0x13;" (assignment_expression "iVar3 = 0x13" (identifier "iVar3") (= "=") (number_literal "0x13")) (; ";")) (expression_statement "(**(code **)(local_88 + -0x7f74))(local_80);" (call_expression "(**(code **)(local_88 + -0x7f74))(local_80)" (parenthesized_expression "(**(code **)(local_88 + -0x7f74))" (( "(") (pointer_expression "**(code **)(local_88 + -0x7f74)" (* "*") (pointer_expression "*(code **)(local_88 + -0x7f74)" (* "*") (cast_expression "(code **)(local_88 + -0x7f74)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_88 + -0x7f74)" (( "(") (binary_expression "local_88 + -0x7f74" (identifier "local_88") (+ "+") (number_literal "-0x7f74")) () ")"))))) () ")")) (argument_list "(local_80)" (( "(") (identifier "local_80") () ")"))) (; ";")) (} "}")))) (if_statement "if (local_7c == (undefined4 *)*piVar13) {\n    return iVar3;\n  }" (if "if") (parenthesized_expression "(local_7c == (undefined4 *)*piVar13)" (( "(") (binary_expression "local_7c == (undefined4 *)*piVar13" (identifier "local_7c") (== "==") (cast_expression "(undefined4 *)*piVar13" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar13" (* "*") (identifier "piVar13")))) () ")")) (compound_statement "{\n    return iVar3;\n  }" ({ "{") (return_statement "return iVar3;" (return "return") (identifier "iVar3") (; ";")) (} "}"))) (expression_statement "pcVar19 = *(code **)(local_88 + -0x7ba0);" (assignment_expression "pcVar19 = *(code **)(local_88 + -0x7ba0)" (identifier "pcVar19") (= "=") (pointer_expression "*(code **)(local_88 + -0x7ba0)" (* "*") (cast_expression "(code **)(local_88 + -0x7ba0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(local_88 + -0x7ba0)" (( "(") (binary_expression "local_88 + -0x7ba0" (identifier "local_88") (+ "+") (number_literal "-0x7ba0")) () ")"))))) (; ";")) (expression_statement "pcVar22 = FUN_000f75ec;" (assignment_expression "pcVar22 = FUN_000f75ec" (identifier "pcVar22") (= "=") (identifier "FUN_000f75ec")) (; ";")) (expression_statement "puVar9 = local_7c;" (assignment_expression "puVar9 = local_7c" (identifier "puVar9") (= "=") (identifier "local_7c")) (; ";")) (expression_statement "(*pcVar19)();" (call_expression "(*pcVar19)()" (parenthesized_expression "(*pcVar19)" (( "(") (pointer_expression "*pcVar19" (* "*") (identifier "pcVar19")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar11 = &uStack_98;" (assignment_expression "puVar11 = &uStack_98" (identifier "puVar11") (= "=") (pointer_expression "&uStack_98" (& "&") (identifier "uStack_98"))) (; ";")) (expression_statement "piVar14 = *(int **)(pcVar19 + 0x64440);" (assignment_expression "piVar14 = *(int **)(pcVar19 + 0x64440)" (identifier "piVar14") (= "=") (pointer_expression "*(int **)(pcVar19 + 0x64440)" (* "*") (cast_expression "(int **)(pcVar19 + 0x64440)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0x64440)" (( "(") (binary_expression "pcVar19 + 0x64440" (identifier "pcVar19") (+ "+") (number_literal "0x64440")) () ")"))))) (; ";")) (expression_statement "iStack_b8 = 0;" (assignment_expression "iStack_b8 = 0" (identifier "iStack_b8") (= "=") (number_literal "0")) (; ";")) (expression_statement "iStack_b4 = *piVar14;" (assignment_expression "iStack_b4 = *piVar14" (identifier "iStack_b4") (= "=") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) (; ";")) (expression_statement "iStack_b0 = iVar8;" (assignment_expression "iStack_b0 = iVar8" (identifier "iStack_b0") (= "=") (identifier "iVar8")) (; ";")) (expression_statement "iStack_ac = iVar3;" (assignment_expression "iStack_ac = iVar3" (identifier "iStack_ac") (= "=") (identifier "iVar3")) (; ";")) (expression_statement "piStack_a8 = piVar13;" (assignment_expression "piStack_a8 = piVar13" (identifier "piStack_a8") (= "=") (identifier "piVar13")) (; ";")) (expression_statement "pcStack_a4 = pcVar22;" (assignment_expression "pcStack_a4 = pcVar22" (identifier "pcStack_a4") (= "=") (identifier "pcVar22")) (; ";")) (expression_statement "uStack_98 = uVar12;" (assignment_expression "uStack_98 = uVar12" (identifier "uStack_98") (= "=") (identifier "uVar12")) (; ";")) (expression_statement "piStack_94 = piVar5;" (assignment_expression "piStack_94 = piVar5" (identifier "piStack_94") (= "=") (identifier "piVar5")) (; ";")) (expression_statement "puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11);" (assignment_expression "puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11)" (identifier "puVar6") (= "=") (cast_expression "(undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11)" (parenthesized_expression "(**(code **)(pcVar19 + 0x6402c))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0x6402c)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0x6402c)" (* "*") (cast_expression "(code **)(pcVar19 + 0x6402c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0x6402c)" (( "(") (binary_expression "pcVar19 + 0x6402c" (identifier "pcVar19") (+ "+") (number_literal "0x6402c")) () ")"))))) () ")")) (argument_list "(iVar10,puVar11)" (( "(") (identifier "iVar10") (, ",") (identifier "puVar11") () ")"))))) (; ";")) (if_statement "if (puVar9[10] == 0) {\n    if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }\n  }" (if "if") (parenthesized_expression "(puVar9[10] == 0)" (( "(") (binary_expression "puVar9[10] == 0" (subscript_expression "puVar9[10]" (identifier "puVar9") ([ "[") (number_literal "10") (] "]")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }\n  }" ({ "{") (if_statement "if (puVar6 == (undefined4 *)0x0) {\n      puVar9[10] = 7;\n    }\n    else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }" (if "if") (parenthesized_expression "(puVar6 == (undefined4 *)0x0)" (( "(") (binary_expression "puVar6 == (undefined4 *)0x0" (identifier "puVar6") (== "==") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      puVar9[10] = 7;\n    }" ({ "{") (expression_statement "puVar9[10] = 7;" (assignment_expression "puVar9[10] = 7" (subscript_expression "puVar9[10]" (identifier "puVar9") ([ "[") (number_literal "10") (] "]")) (= "=") (number_literal "7")) (; ";")) (} "}")) (else_clause "else {\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }" (else "else") (compound_statement "{\n      piVar5 = &iStack_b8;\n      uVar12 = 0xffffffff;\n      iStack_d0 = 0;\n      puVar11 = puVar6;\n      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);\n      puVar9[10] = uVar21;\n    }" ({ "{") (expression_statement "piVar5 = &iStack_b8;" (assignment_expression "piVar5 = &iStack_b8" (identifier "piVar5") (= "=") (pointer_expression "&iStack_b8" (& "&") (identifier "iStack_b8"))) (; ";")) (expression_statement "uVar12 = 0xffffffff;" (assignment_expression "uVar12 = 0xffffffff" (identifier "uVar12") (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "iStack_d0 = 0;" (assignment_expression "iStack_d0 = 0" (identifier "iStack_d0") (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar11 = puVar6;" (assignment_expression "puVar11 = puVar6" (identifier "puVar11") (= "=") (identifier "puVar6")) (; ";")) (expression_statement "uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);" (assignment_expression "uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff)" (identifier "uVar21") (= "=") (call_expression "sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff)" (identifier "sqlite3_prepare_v2") (argument_list "(*puVar9,puVar6,0xffffffff)" (( "(") (pointer_expression "*puVar9" (* "*") (identifier "puVar9")) (, ",") (identifier "puVar6") (, ",") (number_literal "0xffffffff") () ")")))) (; ";")) (expression_statement "puVar9[10] = uVar21;" (assignment_expression "puVar9[10] = uVar21" (subscript_expression "puVar9[10]" (identifier "puVar9") ([ "[") (number_literal "10") (] "]")) (= "=") (identifier "uVar21")) (; ";")) (} "}")))) (} "}"))) (expression_statement "(**(code **)(pcVar19 + 0x64034))(puVar6);" (call_expression "(**(code **)(pcVar19 + 0x64034))(puVar6)" (parenthesized_expression "(**(code **)(pcVar19 + 0x64034))" (( "(") (pointer_expression "**(code **)(pcVar19 + 0x64034)" (* "*") (pointer_expression "*(code **)(pcVar19 + 0x64034)" (* "*") (cast_expression "(code **)(pcVar19 + 0x64034)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0x64034)" (( "(") (binary_expression "pcVar19 + 0x64034" (identifier "pcVar19") (+ "+") (number_literal "0x64034")) () ")"))))) () ")")) (argument_list "(puVar6)" (( "(") (identifier "puVar6") () ")"))) (; ";")) (if_statement "if (iStack_b4 == *piVar14) {\n    return iStack_b8;\n  }" (if "if") (parenthesized_expression "(iStack_b4 == *piVar14)" (( "(") (binary_expression "iStack_b4 == *piVar14" (identifier "iStack_b4") (== "==") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) () ")")) (compound_statement "{\n    return iStack_b8;\n  }" ({ "{") (return_statement "return iStack_b8;" (return "return") (identifier "iStack_b8") (; ";")) (} "}"))) (expression_statement "pcVar22 = *(code **)(pcVar19 + 0x64424);" (assignment_expression "pcVar22 = *(code **)(pcVar19 + 0x64424)" (identifier "pcVar22") (= "=") (pointer_expression "*(code **)(pcVar19 + 0x64424)" (* "*") (cast_expression "(code **)(pcVar19 + 0x64424)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar19 + 0x64424)" (( "(") (binary_expression "pcVar19 + 0x64424" (identifier "pcVar19") (+ "+") (number_literal "0x64424")) () ")"))))) (; ";")) (expression_statement "iVar16 = iStack_b4;" (assignment_expression "iVar16 = iStack_b4" (identifier "iVar16") (= "=") (identifier "iStack_b4")) (; ";")) (expression_statement "(*pcVar22)();" (call_expression "(*pcVar22)()" (parenthesized_expression "(*pcVar22)" (( "(") (pointer_expression "*pcVar22" (* "*") (identifier "pcVar22")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puStack_f8 = puVar1;" (assignment_expression "puStack_f8 = puVar1" (identifier "puStack_f8") (= "=") (identifier "puVar1")) (; ";")) (expression_statement "piVar13 = *(int **)(pcVar22 + 0x6435c);" (assignment_expression "piVar13 = *(int **)(pcVar22 + 0x6435c)" (identifier "piVar13") (= "=") (pointer_expression "*(int **)(pcVar22 + 0x6435c)" (* "*") (cast_expression "(int **)(pcVar22 + 0x6435c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + 0x6435c)" (( "(") (binary_expression "pcVar22 + 0x6435c" (identifier "pcVar22") (+ "+") (number_literal "0x6435c")) () ")"))))) (; ";")) (expression_statement "iStack_11c = 0;" (assignment_expression "iStack_11c = 0" (identifier "iStack_11c") (= "=") (number_literal "0")) (; ";")) (expression_statement "iStack_10c = *piVar13;" (assignment_expression "iStack_10c = *piVar13" (identifier "iStack_10c") (= "=") (pointer_expression "*piVar13" (* "*") (identifier "piVar13"))) (; ";")) (expression_statement "piStack_108 = piVar14;" (assignment_expression "piStack_108 = piVar14" (identifier "piStack_108") (= "=") (identifier "piVar14")) (; ";")) (expression_statement "puStack_104 = puVar6;" (assignment_expression "puStack_104 = puVar6" (identifier "puStack_104") (= "=") (identifier "puVar6")) (; ";")) (expression_statement "puStack_100 = puVar9;" (assignment_expression "puStack_100 = puVar9" (identifier "puStack_100") (= "=") (identifier "puVar9")) (; ";")) (expression_statement "puStack_fc = puVar2;" (assignment_expression "puStack_fc = puVar2" (identifier "puStack_fc") (= "=") (identifier "puVar2")) (; ";")) (expression_statement "piStack_f4 = param_4;" (assignment_expression "piStack_f4 = param_4" (identifier "piStack_f4") (= "=") (identifier "param_4")) (; ";")) (expression_statement "puStack_f0 = unaff_s6;" (assignment_expression "puStack_f0 = unaff_s6" (identifier "puStack_f0") (= "=") (identifier "unaff_s6")) (; ";")) (expression_statement "iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12);" (assignment_expression "iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12)" (parenthesized_expression "(**(code **)(pcVar22 + 0x63f68))" (( "(") (pointer_expression "**(code **)(pcVar22 + 0x63f68)" (* "*") (pointer_expression "*(code **)(pcVar22 + 0x63f68)" (* "*") (cast_expression "(code **)(pcVar22 + 0x63f68)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + 0x63f68)" (( "(") (binary_expression "pcVar22 + 0x63f68" (identifier "pcVar22") (+ "+") (number_literal "0x63f68")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12)" (( "(") (binary_expression "*(int *)(pcVar22 + 0x63f2c) + -0x65b0" (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" (* "*") (cast_expression "(int *)(pcVar22 + 0x63f2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0x63f2c)" (( "(") (binary_expression "pcVar22 + 0x63f2c" (identifier "pcVar22") (+ "+") (number_literal "0x63f2c")) () ")")))) (+ "+") (number_literal "-0x65b0")) (, ",") (identifier "uVar12") () ")")))) (; ";")) (if_statement "if (iVar3 == 0) {\n    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);\n    if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    uVar12 = 0xffffffff;\n  }\n  else {\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);\n    if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }\n    uVar12 = 0xffffffff;\n  }" ({ "{") (expression_statement "iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);" (assignment_expression "iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11)" (identifier "iVar3") (= "=") (call_expression "(**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11)" (parenthesized_expression "(**(code **)(pcVar22 + 0x63f58))" (( "(") (pointer_expression "**(code **)(pcVar22 + 0x63f58)" (* "*") (pointer_expression "*(code **)(pcVar22 + 0x63f58)" (* "*") (cast_expression "(code **)(pcVar22 + 0x63f58)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + 0x63f58)" (( "(") (binary_expression "pcVar22 + 0x63f58" (identifier "pcVar22") (+ "+") (number_literal "0x63f58")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11)" (( "(") (binary_expression "*(int *)(pcVar22 + 0x63f2c) + -0x52f8" (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" (* "*") (cast_expression "(int *)(pcVar22 + 0x63f2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0x63f2c)" (( "(") (binary_expression "pcVar22 + 0x63f2c" (identifier "pcVar22") (+ "+") (number_literal "0x63f2c")) () ")")))) (+ "+") (number_literal "-0x52f8")) (, ",") (identifier "puVar11") () ")")))) (; ";")) (if_statement "if (iVar3 == 0) {\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }" (if "if") (parenthesized_expression "(iVar3 == 0)" (( "(") (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      iStack_11c = 7;\n      goto LAB_000f778c;\n    }" ({ "{") (expression_statement "iStack_11c = 7;" (assignment_expression "iStack_11c = 7" (identifier "iStack_11c") (= "=") (number_literal "7")) (; ";")) (goto_statement "goto LAB_000f778c;" (goto "goto") (statement_identifier "LAB_000f778c") (; ";")) (} "}"))) (expression_statement "uVar12 = 0xffffffff;" (assignment_expression "uVar12 = 0xffffffff" (identifier "uVar12") (= "=") (number_literal "0xffffffff")) (; ";")) (} "}")) (else_clause "else {\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }" (else "else") (compound_statement "{\n    iStack_118 = 0;\n    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);\n    uStack_114 = 0;\n    uStack_110 = 0;\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);\n    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);\n    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);\n    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);\n    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);\n    iVar3 = iStack_118;\n    uVar12 = uStack_114;\n    if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }\n  }" ({ "{") (expression_statement "iStack_118 = 0;" (assignment_expression "iStack_118 = 0" (identifier "iStack_118") (= "=") (number_literal "0")) (; ";")) (expression_statement "pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);" (assignment_expression "pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4)" (identifier "pcVar15") (= "=") (cast_expression "(code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar22 + 0x6404c) + -0x1bd4)" (( "(") (binary_expression "*(int *)(pcVar22 + 0x6404c) + -0x1bd4" (pointer_expression "*(int *)(pcVar22 + 0x6404c)" (* "*") (cast_expression "(int *)(pcVar22 + 0x6404c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0x6404c)" (( "(") (binary_expression "pcVar22 + 0x6404c" (identifier "pcVar22") (+ "+") (number_literal "0x6404c")) () ")")))) (+ "+") (number_literal "-0x1bd4")) () ")")))) (; ";")) (expression_statement "uStack_114 = 0;" (assignment_expression "uStack_114 = 0" (identifier "uStack_114") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_110 = 0;" (assignment_expression "uStack_110 = 0" (identifier "uStack_110") (= "=") (number_literal "0")) (; ";")) (expression_statement "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c)" (parenthesized_expression "(*pcVar15)" (( "(") (pointer_expression "*pcVar15" (* "*") (identifier "pcVar15")) () ")")) (argument_list "(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c)" (( "(") (pointer_expression "&iStack_118" (& "&") (identifier "iStack_118")) (, ",") (binary_expression "*(int *)(pcVar22 + 0x63f2c) + -0x5288" (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" (* "*") (cast_expression "(int *)(pcVar22 + 0x63f2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0x63f2c)" (( "(") (binary_expression "pcVar22 + 0x63f2c" (identifier "pcVar22") (+ "+") (number_literal "0x63f2c")) () ")")))) (+ "+") (number_literal "-0x5288")) (, ",") (pointer_expression "&iStack_11c" (& "&") (identifier "iStack_11c")) () ")"))) (; ";")) (expression_statement "pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);" (assignment_expression "pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4)" (identifier "pcVar20") (= "=") (cast_expression "(code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar22 + 0x6404c) + -0x1cd4)" (( "(") (binary_expression "*(int *)(pcVar22 + 0x6404c) + -0x1cd4" (pointer_expression "*(int *)(pcVar22 + 0x6404c)" (* "*") (cast_expression "(int *)(pcVar22 + 0x6404c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0x6404c)" (( "(") (binary_expression "pcVar22 + 0x6404c" (identifier "pcVar22") (+ "+") (number_literal "0x6404c")) () ")")))) (+ "+") (number_literal "-0x1cd4")) () ")")))) (; ";")) (expression_statement "(*pcVar20)(&iStack_118,puVar11,&iStack_11c);" (call_expression "(*pcVar20)(&iStack_118,puVar11,&iStack_11c)" (parenthesized_expression "(*pcVar20)" (( "(") (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) () ")")) (argument_list "(&iStack_118,puVar11,&iStack_11c)" (( "(") (pointer_expression "&iStack_118" (& "&") (identifier "iStack_118")) (, ",") (identifier "puVar11") (, ",") (pointer_expression "&iStack_11c" (& "&") (identifier "iStack_11c")) () ")"))) (; ";")) (expression_statement "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c)" (parenthesized_expression "(*pcVar15)" (( "(") (pointer_expression "*pcVar15" (* "*") (identifier "pcVar15")) () ")")) (argument_list "(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c)" (( "(") (pointer_expression "&iStack_118" (& "&") (identifier "iStack_118")) (, ",") (binary_expression "*(int *)(pcVar22 + 0x63f2c) + -0x1e34" (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" (* "*") (cast_expression "(int *)(pcVar22 + 0x63f2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0x63f2c)" (( "(") (binary_expression "pcVar22 + 0x63f2c" (identifier "pcVar22") (+ "+") (number_literal "0x63f2c")) () ")")))) (+ "+") (number_literal "-0x1e34")) (, ",") (pointer_expression "&iStack_11c" (& "&") (identifier "iStack_11c")) () ")"))) (; ";")) (expression_statement "(*pcVar20)(&iStack_118,uVar12,&iStack_11c);" (call_expression "(*pcVar20)(&iStack_118,uVar12,&iStack_11c)" (parenthesized_expression "(*pcVar20)" (( "(") (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) () ")")) (argument_list "(&iStack_118,uVar12,&iStack_11c)" (( "(") (pointer_expression "&iStack_118" (& "&") (identifier "iStack_118")) (, ",") (identifier "uVar12") (, ",") (pointer_expression "&iStack_11c" (& "&") (identifier "iStack_11c")) () ")"))) (; ";")) (expression_statement "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c)" (parenthesized_expression "(*pcVar15)" (( "(") (pointer_expression "*pcVar15" (* "*") (identifier "pcVar15")) () ")")) (argument_list "(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c)" (( "(") (pointer_expression "&iStack_118" (& "&") (identifier "iStack_118")) (, ",") (binary_expression "*(int *)(pcVar22 + 0x63f18) + 0x5cfc" (pointer_expression "*(int *)(pcVar22 + 0x63f18)" (* "*") (cast_expression "(int *)(pcVar22 + 0x63f18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0x63f18)" (( "(") (binary_expression "pcVar22 + 0x63f18" (identifier "pcVar22") (+ "+") (number_literal "0x63f18")) () ")")))) (+ "+") (number_literal "0x5cfc")) (, ",") (pointer_expression "&iStack_11c" (& "&") (identifier "iStack_11c")) () ")"))) (; ";")) (expression_statement "iVar3 = iStack_118;" (assignment_expression "iVar3 = iStack_118" (identifier "iVar3") (= "=") (identifier "iStack_118")) (; ";")) (expression_statement "uVar12 = uStack_114;" (assignment_expression "uVar12 = uStack_114" (identifier "uVar12") (= "=") (identifier "uStack_114")) (; ";")) (if_statement "if (0 < (int)piVar5) {\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }" (if "if") (parenthesized_expression "(0 < (int)piVar5)" (( "(") (binary_expression "0 < (int)piVar5" (number_literal "0") (< "<") (cast_expression "(int)piVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar5"))) () ")")) (compound_statement "{\n      iVar10 = *(int *)(pcVar22 + 0x6404c);\n      piVar14 = (int *)0x0;\n      iVar17 = *(int *)(pcVar22 + 0x63f18);\n      iVar18 = *(int *)(pcVar22 + 0x63f2c);\n      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;\n      do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);\n    }" ({ "{") (expression_statement "iVar10 = *(int *)(pcVar22 + 0x6404c);" (assignment_expression "iVar10 = *(int *)(pcVar22 + 0x6404c)" (identifier "iVar10") (= "=") (pointer_expression "*(int *)(pcVar22 + 0x6404c)" (* "*") (cast_expression "(int *)(pcVar22 + 0x6404c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0x6404c)" (( "(") (binary_expression "pcVar22 + 0x6404c" (identifier "pcVar22") (+ "+") (number_literal "0x6404c")) () ")"))))) (; ";")) (expression_statement "piVar14 = (int *)0x0;" (assignment_expression "piVar14 = (int *)0x0" (identifier "piVar14") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "iVar17 = *(int *)(pcVar22 + 0x63f18);" (assignment_expression "iVar17 = *(int *)(pcVar22 + 0x63f18)" (identifier "iVar17") (= "=") (pointer_expression "*(int *)(pcVar22 + 0x63f18)" (* "*") (cast_expression "(int *)(pcVar22 + 0x63f18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0x63f18)" (( "(") (binary_expression "pcVar22 + 0x63f18" (identifier "pcVar22") (+ "+") (number_literal "0x63f18")) () ")"))))) (; ";")) (expression_statement "iVar18 = *(int *)(pcVar22 + 0x63f2c);" (assignment_expression "iVar18 = *(int *)(pcVar22 + 0x63f2c)" (identifier "iVar18") (= "=") (pointer_expression "*(int *)(pcVar22 + 0x63f2c)" (* "*") (cast_expression "(int *)(pcVar22 + 0x63f2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0x63f2c)" (( "(") (binary_expression "pcVar22 + 0x63f2c" (identifier "pcVar22") (+ "+") (number_literal "0x63f2c")) () ")"))))) (; ";")) (expression_statement "iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;" (assignment_expression "iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4" (identifier "iVar8") (= "=") (binary_expression "*(int *)(pcVar22 + 0x63f18) + 0x53f4" (pointer_expression "*(int *)(pcVar22 + 0x63f18)" (* "*") (cast_expression "(int *)(pcVar22 + 0x63f18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar22 + 0x63f18)" (( "(") (binary_expression "pcVar22 + 0x63f18" (identifier "pcVar22") (+ "+") (number_literal "0x63f18")) () ")")))) (+ "+") (number_literal "0x53f4"))) (; ";")) (do_statement "do {\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      } while (piVar5 != piVar14);" (do "do") (compound_statement "{\n        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }\n        iVar3 = iStack_118;\n        uVar12 = uStack_114;\n      }" ({ "{") (while_statement "while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0') {\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }" (while "while") (parenthesized_expression "(pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0')" (( "(") (comma_expression "pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0'" (assignment_expression "pcVar7 = (char *)(iStack_cc + (int)piVar14)" (identifier "pcVar7") (= "=") (cast_expression "(char *)(iStack_cc + (int)piVar14)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iStack_cc + (int)piVar14)" (( "(") (binary_expression "iStack_cc + (int)piVar14" (identifier "iStack_cc") (+ "+") (cast_expression "(int)piVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar14"))) () ")")))) (, ",") (comma_expression "piVar14 = (int *)((int)piVar14 + 1),\n              *pcVar7 != '\0'" (assignment_expression "piVar14 = (int *)((int)piVar14 + 1)" (identifier "piVar14") (= "=") (cast_expression "(int *)((int)piVar14 + 1)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar14 + 1)" (( "(") (binary_expression "(int)piVar14 + 1" (cast_expression "(int)piVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar14")) (+ "+") (number_literal "1")) () ")")))) (, ",") (binary_expression "*pcVar7 != '\0'" (pointer_expression "*pcVar7" (* "*") (identifier "pcVar7")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))))) () ")")) (compound_statement "{\n          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);\n          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);\n          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);\n          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);\n          iVar8 = iVar17 + 0x5c88;\n          iVar3 = iStack_118;\n          uVar12 = uStack_114;\n          if (piVar5 == piVar14) goto joined_r0x000f7930;\n        }" ({ "{") (expression_statement "(*pcVar15)(&iStack_118,iVar8,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,iVar8,&iStack_11c)" (parenthesized_expression "(*pcVar15)" (( "(") (pointer_expression "*pcVar15" (* "*") (identifier "pcVar15")) () ")")) (argument_list "(&iStack_118,iVar8,&iStack_11c)" (( "(") (pointer_expression "&iStack_118" (& "&") (identifier "iStack_118")) (, ",") (identifier "iVar8") (, ",") (pointer_expression "&iStack_11c" (& "&") (identifier "iStack_11c")) () ")"))) (; ";")) (expression_statement "(*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);" (call_expression "(*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c)" (parenthesized_expression "(*pcVar20)" (( "(") (pointer_expression "*pcVar20" (* "*") (identifier "pcVar20")) () ")")) (argument_list "(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c)" (( "(") (pointer_expression "&iStack_118" (& "&") (identifier "iStack_118")) (, ",") (pointer_expression "*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4)" (* "*") (cast_expression "(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iStack_d0 + (int)piVar14 * 4 + -4)" (( "(") (binary_expression "iStack_d0 + (int)piVar14 * 4 + -4" (binary_expression "iStack_d0 + (int)piVar14 * 4" (identifier "iStack_d0") (+ "+") (binary_expression "(int)piVar14 * 4" (cast_expression "(int)piVar14" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar14")) (* "*") (number_literal "4"))) (+ "+") (number_literal "-4")) () ")")))) (, ",") (pointer_expression "&iStack_11c" (& "&") (identifier "iStack_11c")) () ")"))) (; ";")) (expression_statement "(*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);" (call_expression "(*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c)" (parenthesized_expression "(*pcVar15)" (( "(") (pointer_expression "*pcVar15" (* "*") (identifier "pcVar15")) () ")")) (argument_list "(&iStack_118,iVar18 + -0x5278,&iStack_11c)" (( "(") (pointer_expression "&iStack_118" (& "&") (identifier "iStack_118")) (, ",") (binary_expression "iVar18 + -0x5278" (identifier "iVar18") (+ "+") (number_literal "-0x5278")) (, ",") (pointer_expression "&iStack_11c" (& "&") (identifier "iStack_11c")) () ")"))) (; ";")) (expression_statement "(*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);" (call_expression "(*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c)" (parenthesized_expression "(*(code *)(iVar10 + -0x1b0c))" (( "(") (pointer_expression "*(code *)(iVar10 + -0x1b0c)" (* "*") (cast_expression "(code *)(iVar10 + -0x1b0c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + -0x1b0c)" (( "(") (binary_expression "iVar10 + -0x1b0c" (identifier "iVar10") (+ "+") (number_literal "-0x1b0c")) () ")")))) () ")")) (argument_list "(&iStack_118,piVar14,&iStack_11c)" (( "(") (pointer_expression "&iStack_118" (& "&") (identifier "iStack_118")) (, ",") (identifier "piVar14") (, ",") (pointer_expression "&iStack_11c" (& "&") (identifier "iStack_11c")) () ")"))) (; ";")) (expression_statement "iVar8 = iVar17 + 0x5c88;" (assignment_expression "iVar8 = iVar17 + 0x5c88" (identifier "iVar8") (= "=") (binary_expression "iVar17 + 0x5c88" (identifier "iVar17") (+ "+") (number_literal "0x5c88"))) (; ";")) (expression_statement "iVar3 = iStack_118;" (assignment_expression "iVar3 = iStack_118" (identifier "iVar3") (= "=") (identifier "iStack_118")) (; ";")) (expression_statement "uVar12 = uStack_114;" (assignment_expression "uVar12 = uStack_114" (identifier "uVar12") (= "=") (identifier "uStack_114")) (; ";")) (if_statement "if (piVar5 == piVar14) goto joined_r0x000f7930;" (if "if") (parenthesized_expression "(piVar5 == piVar14)" (( "(") (binary_expression "piVar5 == piVar14" (identifier "piVar5") (== "==") (identifier "piVar14")) () ")")) (goto_statement "goto joined_r0x000f7930;" (goto "goto") (statement_identifier "joined_r0x000f7930") (; ";"))) (} "}"))) (expression_statement "iVar3 = iStack_118;" (assignment_expression "iVar3 = iStack_118" (identifier "iVar3") (= "=") (identifier "iStack_118")) (; ";")) (expression_statement "uVar12 = uStack_114;" (assignment_expression "uVar12 = uStack_114" (identifier "uVar12") (= "=") (identifier "uStack_114")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(piVar5 != piVar14)" (( "(") (binary_expression "piVar5 != piVar14" (identifier "piVar5") (!= "!=") (identifier "piVar14")) () ")")) (; ";")) (} "}"))) (} "}")))) (labeled_statement "joined_r0x000f7930:\n  if (iStack_11c == 0) {\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }" (statement_identifier "joined_r0x000f7930") (: ":") (if_statement "if (iStack_11c == 0) {\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }" (if "if") (parenthesized_expression "(iStack_11c == 0)" (( "(") (binary_expression "iStack_11c == 0" (identifier "iStack_11c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);\n  }" ({ "{") (expression_statement "iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);" (assignment_expression "iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0)" (identifier "iStack_11c") (= "=") (call_expression "sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0)" (identifier "sqlite3_prepare_v2") (argument_list "(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0)" (( "(") (identifier "iVar16") (, ",") (identifier "iVar3") (, ",") (identifier "uVar12") (, ",") (binary_expression "pcVar19 + 0x6bfc4" (identifier "pcVar19") (+ "+") (number_literal "0x6bfc4")) (, ",") (number_literal "0") () ")")))) (; ";")) (} "}")))) (labeled_statement "LAB_000f778c:\n  (**(code **)(pcVar22 + 0x63f50))(iVar3);" (statement_identifier "LAB_000f778c") (: ":") (expression_statement "(**(code **)(pcVar22 + 0x63f50))(iVar3);" (call_expression "(**(code **)(pcVar22 + 0x63f50))(iVar3)" (parenthesized_expression "(**(code **)(pcVar22 + 0x63f50))" (( "(") (pointer_expression "**(code **)(pcVar22 + 0x63f50)" (* "*") (pointer_expression "*(code **)(pcVar22 + 0x63f50)" (* "*") (cast_expression "(code **)(pcVar22 + 0x63f50)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + 0x63f50)" (( "(") (binary_expression "pcVar22 + 0x63f50" (identifier "pcVar22") (+ "+") (number_literal "0x63f50")) () ")"))))) () ")")) (argument_list "(iVar3)" (( "(") (identifier "iVar3") () ")"))) (; ";"))) (if_statement "if (iStack_10c == *piVar13) {\n    return iStack_11c;\n  }" (if "if") (parenthesized_expression "(iStack_10c == *piVar13)" (( "(") (binary_expression "iStack_10c == *piVar13" (identifier "iStack_10c") (== "==") (pointer_expression "*piVar13" (* "*") (identifier "piVar13"))) () ")")) (compound_statement "{\n    return iStack_11c;\n  }" ({ "{") (return_statement "return iStack_11c;" (return "return") (identifier "iStack_11c") (; ";")) (} "}"))) (expression_statement "(**(code **)(pcVar22 + 0x64340))();" (call_expression "(**(code **)(pcVar22 + 0x64340))()" (parenthesized_expression "(**(code **)(pcVar22 + 0x64340))" (( "(") (pointer_expression "**(code **)(pcVar22 + 0x64340)" (* "*") (pointer_expression "*(code **)(pcVar22 + 0x64340)" (* "*") (cast_expression "(code **)(pcVar22 + 0x64340)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar22 + 0x64340)" (( "(") (binary_expression "pcVar22 + 0x64340" (identifier "pcVar22") (+ "+") (number_literal "0x64340")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar16 = FUN_000f6c34();" (assignment_expression "iVar16 = FUN_000f6c34()" (identifier "iVar16") (= "=") (call_expression "FUN_000f6c34()" (identifier "FUN_000f6c34") (argument_list "()" (( "(") () ")")))) (; ";")) (return_statement "return iVar16;" (return "return") (identifier "iVar16") (; ";")) (} "}")))

int function_1(type_1 *var_11,int idxNum,char *idxStr,int var_2,
                    type_2 **var_7)

{
  type_3 **ppsVar1;
  type_4 *puVar2;
  int var_14;
  char *var_5;
  type_3 *var_6;
  char *var_10;
  char *var_16;
  type_5 uVar7;
  type_1 *var_25;
  type_5 *puVar8;
  type_6 *psVar9;
  int *zSql_00;
  int var_24;
  type_1 *psVar11;
  int var_3;
  int *piVar13;
  int *var_19;
  type_3 *psVar15;
  int *piVar16;
  type_4 *unaff_s6;
  int var_23;
  type_4 *var_15;
  type_7 *pcVar19;
  type_1 *ppStmt_00;
  type_1 *var_26;
  type_7 *var_18;
  type_7 *pcVar22;
  type_8 **in_stack_fffffeb8;
  char **ppcStack_144;
  int var_27;
  int *piStack_118;
  int iStack_114;
  type_5 uStack_110;
  type_6 *var_28;
  int *piStack_108;
  int *piStack_104;
  type_5 *puStack_100;
  char *pcStack_fc;
  type_4 *puStack_f8;
  int iStack_f4;
  type_4 *puStack_f0;
  int var_22;
  int var_21;
  type_1 sStack_b8;
  type_6 *var_20;
  int iStack_b0;
  int iStack_ac;
  int *piStack_a8;
  type_7 *pcStack_a4;
  int iStack_98;
  type_1 *psStack_94;
  type_1 sStack_80;
  type_5 *var_17;
  int iStack_74;
  type_2 **ppsStack_70;
  type_1 *psStack_6c;
  type_3 *psStack_68;
  type_7 *pcStack_64;
  type_9 acc;
  
  puVar2 = PTR___stack_chk_guard_0015ba2c;
  psVar15 = var_11->pVtab;
  var_14 = *(int *)PTR___stack_chk_guard_0015ba2c;
  var_25 = (type_1 *)var_2;
  (*(type_7 *)(var_1 + 0x1b68))();
  var_3 = -((int)((*(type_10 *)(psVar15[1].nRef + 5) ^ 0x20) << 0x1a) >> 0x1f);
  if (0 < var_2) {
    var_2 = var_2 + var_3;
    unaff_s6 = var_4 + 0x71f4;
    do {
      var_5 = (char *)(*(type_7 *)PTR_sqlite3_value_text_0015b614)(*var_7);
      if (var_5 != (char *)0x0) {
        var_6 = (type_3 *)(*(type_7 *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);
        var_11[var_3 + 4].pVtab = var_6;
        if (var_6 == (type_3 *)0x0) goto LAB_000f7410;
      }
      var_3 = var_3 + 1;
      var_7 = var_7 + 1;
    } while (var_3 != var_2);
  }
  acc.accError = '\0';
  acc.printfFlags = '\0';
  acc.zText = (char *)0x0;
  acc.db = (type_6 *)0x0;
  acc.nAlloc = 0;
  acc.nChar = 0;
  acc.mxAlloc = (type_11)psVar15[1].pModule[1].xDisconnect;
  (*(type_7 *)PTR_sqlite3_str_appendall_0015b7c4)(&acc,var_8 + -0x5360);
  if (var_11[5].pVtab != (type_3 *)0x0) {
    (*(type_7 *)PTR_sqlite3_str_appendf_0015b810)(&acc,var_8 + -0x5358);
  }
  var_5 = *(char **)psVar15[1].nRef;
  (*(type_7 *)PTR_sqlite3_str_appendall_0015b7c4)(&acc);
  if (var_11[4].pVtab != (type_3 *)0x0) {
    var_5 = var_4 + 0x55c4;
    (*(type_7 *)PTR_sqlite3_str_appendf_0015b810)(&acc);
  }
  var_10 = (char *)(*(type_7 *)(var_9 + -0x2478))(&acc);
  if (var_10 == (char *)0x0) {
LAB_000f7410:
    var_3 = 7;
  }
  else {
    var_25 = var_11 + 1;
    var_5 = var_10;
    var_3 = var_12((type_6 *)psVar15[1].pModule,var_10,-1,(type_8 **)var_25,
                                (char **)0x0);
    (*(type_7 *)PTR_sqlite3_free_0015b620)(var_10);
    if (var_3 == 0) {
      var_3 = var_13(var_11);
    }
    else {
      var_5 = (char *)(*(type_7 *)PTR_sqlite3_errmsg_0015b624)(psVar15[1].pModule);
      var_10 = (char *)(*(type_7 *)PTR_sqlite3_mprintf_0015b628)(var_4 + 0x71f4);
      psVar15->zErrMsg = var_10;
    }
  }
  if (var_14 == *(int *)puVar2) {
    return var_3;
  }
  var_18 = rtreeConstraintError;
  var_15 = PTR___stack_chk_fail_0015ba10;
  (*(type_7 *)PTR___stack_chk_fail_0015ba10)();
  var_19 = *(int **)(var_15 + 0x645d8);
  var_24 = *(int *)(var_14 + 0x24);
  var_10 = *(char **)(var_14 + 0x20);
  var_17 = (type_5 *)*var_19;
  sStack_80.pVtab = (type_3 *)0x0;
  iStack_74 = var_3;
  ppsStack_70 = var_7;
  psStack_6c = var_11;
  psStack_68 = psVar15;
  pcStack_64 = var_18;
  var_16 = (char *)(**(type_7 **)(var_15 + 0x641d4))(*(int *)(var_15 + 0x641a8) + -0x5354,var_10);
  if (var_16 == (char *)0x0) {
    var_3 = 7;
    (**(type_7 **)(var_15 + 0x641cc))(0);
LAB_000f7558:
    (**(type_7 **)(var_15 + 0x641e8))(sStack_80.pVtab);
  }
  else {
    var_25 = &sStack_80;
    var_24 = -1;
    var_10 = var_16;
    var_3 = var_12(*(type_6 **)(var_14 + 0xc),var_16,-1,(type_8 **)var_25,
                                (char **)0x0);
    (**(type_7 **)(var_15 + 0x641cc))(var_16);
    if (var_3 != 0) goto LAB_000f7558;
    if (var_5 == (char *)0x0) {
      var_24 = (**(type_7 **)(var_15 + 0x64430))(sStack_80.pVtab,0);
      var_10 = *(char **)(var_14 + 0x24);
      uVar7 = (**(type_7 **)(var_15 + 0x641d4))(*(int *)(var_15 + 0x641a8) + -0x5340,var_10);
      *(type_5 *)(var_14 + 8) = uVar7;
    }
    else {
      var_24 = (**(type_7 **)(var_15 + 0x64430))(sStack_80.pVtab,var_5);
      var_25 = (type_1 *)(**(type_7 **)(var_15 + 0x64430))(sStack_80.pVtab,var_5 + 1);
      var_10 = *(char **)(var_14 + 0x24);
      uVar7 = (**(type_7 **)(var_15 + 0x641d4))(*(int *)(var_15 + 0x641a8) + -0x5320,var_10);
      *(type_5 *)(var_14 + 8) = uVar7;
    }
    var_3 = 0x13;
    (**(type_7 **)(var_15 + 0x641e8))(sStack_80.pVtab);
  }
  if (var_17 == (type_5 *)*var_19) {
    return var_3;
  }
  var_18 = *(type_7 **)(var_15 + 0x645bc);
  pcVar22 = rtreeCheckPrepare;
  puVar8 = var_17;
  (*var_18)();
  ppStmt_00 = (type_1 *)(var_18 + 0x6bfc4);
  zSql_00 = &iStack_98;
  piVar13 = *(int **)(var_18 + 0x64440);
  sStack_b8.pVtab = (type_3 *)0x0;
  var_20 = (type_6 *)*piVar13;
  iStack_b0 = var_14;
  iStack_ac = var_3;
  piStack_a8 = var_19;
  pcStack_a4 = pcVar22;
  iStack_98 = var_24;
  psStack_94 = var_25;
  var_19 = (int *)(**(type_7 **)(var_18 + 0x6402c))(var_10);
  if (puVar8[10] == 0) {
    if (var_19 == (int *)0x0) {
      puVar8[10] = 7;
    }
    else {
      var_25 = &sStack_b8;
      var_24 = -1;
      var_22 = 0;
      zSql_00 = var_19;
      var_3 = var_12((type_6 *)*puVar8,(char *)var_19,-1,(type_8 **)var_25,
                                  (char **)0x0);
      puVar8[10] = var_3;
    }
  }
  (**(type_7 **)(var_18 + 0x64034))(var_19);
  if (var_20 == (type_6 *)*piVar13) {
    return (int)sStack_b8.pVtab;
  }
  var_18 = *(type_7 **)(var_18 + 0x64424);
  psVar9 = var_20;
  (*var_18)();
  puStack_f8 = puVar2;
  piVar16 = *(int **)(var_18 + 0x6435c);
  var_27 = 0;
  var_28 = (type_6 *)*piVar16;
  var_3 = var_24;
  psVar11 = var_25;
  piStack_108 = piVar13;
  piStack_104 = var_19;
  puStack_100 = puVar8;
  pcStack_fc = var_5;
  iStack_f4 = var_2;
  puStack_f0 = unaff_s6;
  var_14 = (**(type_7 **)(var_18 + 0x63f68))(*(int *)(var_18 + 0x63f2c) + -0x65b0,var_24);
  if (var_14 == 0) {
    var_19 = (int *)(**(type_7 **)(var_18 + 0x63f58))(*(int *)(var_18 + 0x63f2c) + -0x52f8);
    if (var_19 == (int *)0x0) {
      var_27 = 7;
      goto LAB_000f778c;
    }
    var_3 = -1;
  }
  else {
    piStack_118 = (int *)0x0;
    pcVar22 = (type_7 *)(*(int *)(var_18 + 0x6404c) + -0x1bd4);
    iStack_114 = 0;
    uStack_110 = 0;
    (*pcVar22)(&piStack_118,*(int *)(var_18 + 0x63f2c) + -0x5288,&var_27);
    pcVar19 = (type_7 *)(*(int *)(var_18 + 0x6404c) + -0x1cd4);
    (*pcVar19)(&piStack_118,zSql_00,&var_27);
    (*pcVar22)(&piStack_118,*(int *)(var_18 + 0x63f2c) + -0x1e34,&var_27);
    (*pcVar19)(&piStack_118,var_24,&var_27);
    zSql_00 = (int *)(*(int *)(var_18 + 0x63f18) + 0x5cfc);
    (*pcVar22)(&piStack_118,zSql_00,&var_27);
    var_19 = piStack_118;
    var_3 = iStack_114;
    if (0 < (int)var_25) {
      var_14 = *(int *)(var_18 + 0x6404c);
      var_26 = (type_1 *)0x0;
      var_24 = *(int *)(var_18 + 0x63f18);
      var_23 = *(int *)(var_18 + 0x63f2c);
      zSql_00 = (int *)(*(int *)(var_18 + 0x63f18) + 0x53f4);
      do {
        while (ppsVar1 = &var_26->pVtab,
              var_26 = (type_1 *)((int)&var_26->pVtab + 1),
              *(char *)((int)ppsVar1 + var_21) != '\0') {
          (*pcVar22)(&piStack_118,zSql_00,&var_27);
          (*pcVar19)(&piStack_118,*(type_5 *)(var_22 + (int)var_26 * 4 + -4),
                     &var_27);
          (*pcVar22)(&piStack_118,var_23 + -0x5278,&var_27);
          (*(type_7 *)(var_14 + -0x1b0c))(&piStack_118,var_26,&var_27);
          zSql_00 = (int *)(var_24 + 0x5c88);
          var_19 = piStack_118;
          var_3 = iStack_114;
          if (var_25 == var_26) goto joined_r0x000f7930;
        }
        var_19 = piStack_118;
        var_3 = iStack_114;
      } while (var_25 != var_26);
    }
  }
joined_r0x000f7930:
  if (var_27 == 0) {
    in_stack_fffffeb8 = (type_8 **)0x0;
    zSql_00 = var_19;
    var_27 = var_12(psVar9,(char *)var_19,var_3,(type_8 **)ppStmt_00,
                                    (char **)0x0);
    psVar11 = ppStmt_00;
  }
LAB_000f778c:
  (**(type_7 **)(var_18 + 0x63f50))(var_19);
  if (var_28 == (type_6 *)*piVar16) {
    return var_27;
  }
  psVar9 = var_28;
  (**(type_7 **)(var_18 + 0x64340))();
  var_3 = var_29
                     (psVar9,(char *)zSql_00,var_3,(type_12)psVar11 & 0xf | 0x80,(type_13 *)0x0,
                      in_stack_fffffeb8,ppcStack_144);
  return var_3;
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (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: (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: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (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: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) 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: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) 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: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (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)) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (unary_expression argument: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (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))))) right: (number_literal))) right: (number_literal)))) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (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))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (pointer_expression argument: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) 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: (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: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (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: (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))))))) (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 (pointer_expression argument: (identifier)) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (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 (pointer_expression argument: (identifier)) (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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))))))))) (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 (pointer_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (pointer_expression argument: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (pointer_expression argument: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) 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))))) (identifier) (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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 (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: (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 (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) consequence: (compound_statement (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_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: (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 (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)) (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))) (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 (number_literal)))) (labeled_statement label: (statement_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)))))) alternative: (else_clause (compound_statement (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) 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))))) (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_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)) value: (number_literal)))) 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) (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: (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 (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)) (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) 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 (identifier) (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: (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: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (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 (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)) (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))))) (expression_statement (assignment_expression left: (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))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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 (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: (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: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (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: (cast_expression type: (type_descriptor type: (type_identifier) 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) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (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)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)))) alternative: (else_clause (compound_statement (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (number_literal))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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: (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: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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)) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) 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 (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)) (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))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (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 (pointer_expression argument: (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)) (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: (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: (identifier))) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (pointer_expression argument: (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (pointer_expression argument: (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)) (pointer_expression argument: (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (pointer_expression argument: (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (pointer_expression argument: (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)) (pointer_expression argument: (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: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (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)))) (do_statement body: (compound_statement (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) right: (comma_expression left: (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))))) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))))) body: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (pointer_expression argument: (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (pointer_expression argument: (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: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) right: (number_literal))))) (pointer_expression argument: (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (pointer_expression argument: (identifier)) (binary_expression left: (identifier) right: (number_literal)) (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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (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))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))))))) (labeled_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: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal)) (number_literal)))))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (identifier)))) consequence: (compound_statement (return_statement (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (return_statement (identifier)))))

int MASKED(int *param_1,undefined4 param_2,undefined4 param_3,int *param_4,undefined4 *param_5
                )

{
  undefined *puVar1;
  undefined *puVar2;
  int iVar3;
  undefined *puVar4;
  int *piVar5;
  undefined4 *puVar6;
  char *pcVar7;
  int iVar8;
  undefined4 *puVar9;
  int iVar10;
  undefined4 *puVar11;
  undefined4 uVar12;
  int *piVar13;
  int *piVar14;
  code *pcVar15;
  int iVar16;
  int iVar17;
  undefined *unaff_s6;
  int iVar18;
  code *pcVar19;
  code *pcVar20;
  undefined4 uVar21;
  code *pcVar22;
  int iStack_11c;
  int iStack_118;
  undefined4 uStack_114;
  undefined4 uStack_110;
  int iStack_10c;
  int *piStack_108;
  undefined4 *puStack_104;
  undefined4 *puStack_100;
  undefined *puStack_fc;
  undefined *puStack_f8;
  int *piStack_f4;
  undefined *puStack_f0;
  int iStack_d0;
  int iStack_cc;
  int iStack_b8;
  int iStack_b4;
  int iStack_b0;
  int iStack_ac;
  int *piStack_a8;
  code *pcStack_a4;
  undefined4 uStack_98;
  int *piStack_94;
  undefined4 local_90;
  undefined *local_88;
  int local_80;
  undefined4 *local_7c;
  int local_74;
  undefined4 *local_70;
  int *local_6c;
  int local_68;
  undefined4 local_64;
  undefined4 local_50;
  undefined4 local_3c;
  undefined4 local_38;
  undefined4 local_34;
  undefined4 local_30;
  undefined4 local_2c;
  undefined2 local_28;
  int local_24;
  
  puVar1 = PTR___stack_chk_guard_0015ba2c;
  iVar16 = *param_1;
  local_24 = *(int *)PTR___stack_chk_guard_0015ba2c;
  piVar5 = param_4;
  (*(code *)(PTR_LAB_0015b6f8 + 0x1b68))();
  piVar13 = (int *)-((int)((*(byte *)(*(int *)(iVar16 + 0x10) + 5) ^ 0x20) << 0x1a) >> 0x1f);
  if (0 < (int)param_4) {
    param_4 = (int *)((int)param_4 + (int)piVar13);
    unaff_s6 = PTR_LAB_0015b5e8 + 0x71f4;
    do {
      puVar2 = (undefined *)(*(code *)PTR_sqlite3_value_text_0015b614)(*param_5);
      if (puVar2 != (undefined *)0x0) {
        iVar3 = (*(code *)PTR_sqlite3_mprintf_0015b628)(unaff_s6);
        param_1[(int)(piVar13 + 1)] = iVar3;
        if (iVar3 == 0) goto LAB_000f7410;
      }
      piVar13 = (int *)((int)piVar13 + 1);
      param_5 = param_5 + 1;
    } while (piVar13 != param_4);
  }
  local_28 = 0;
  local_38 = 0;
  local_3c = 0;
  local_34 = 0;
  local_2c = 0;
  local_30 = *(undefined4 *)(*(int *)(iVar16 + 0xc) + 0x70);
  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c,PTR_UINT_0015b5fc + -0x5360);
  if (param_1[5] != 0) {
    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c,PTR_UINT_0015b5fc + -0x5358);
  }
  puVar2 = (undefined *)**(undefined4 **)(iVar16 + 0x10);
  (*(code *)PTR_sqlite3_str_appendall_0015b7c4)(&local_3c);
  if (param_1[4] != 0) {
    puVar2 = PTR_LAB_0015b5e8 + 0x55c4;
    (*(code *)PTR_sqlite3_str_appendf_0015b810)(&local_3c);
  }
  puVar4 = (undefined *)(*(code *)(PTR_LAB_0015b6d8 + -0x2478))(&local_3c);
  if (puVar4 == (undefined *)0x0) {
LAB_000f7410:
    iVar3 = 7;
  }
  else {
    piVar5 = param_1 + 1;
    local_50 = 0;
    puVar2 = puVar4;
    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar16 + 0xc),puVar4,0xffffffff);
    (*(code *)PTR_sqlite3_free_0015b620)(puVar4);
    if (iVar3 == 0) {
      iVar3 = FUN_000ddfb0(param_1);
    }
    else {
      puVar2 = (undefined *)(*(code *)PTR_sqlite3_errmsg_0015b624)(*(undefined4 *)(iVar16 + 0xc));
      uVar12 = (*(code *)PTR_sqlite3_mprintf_0015b628)(PTR_LAB_0015b5e8 + 0x71f4);
      *(undefined4 *)(iVar16 + 8) = uVar12;
    }
  }
  if (local_24 == *(int *)puVar1) {
    return iVar3;
  }
  uVar21 = 0xf7454;
  iVar8 = local_24;
  puVar4 = PTR___stack_chk_fail_0015ba10;
  (*(code *)PTR___stack_chk_fail_0015ba10)();
  local_88 = puVar4 + 0x6c15c;
  piVar13 = *(int **)(puVar4 + 0x645d8);
  uVar12 = *(undefined4 *)(iVar8 + 0x24);
  iVar10 = *(int *)(iVar8 + 0x20);
  local_7c = (undefined4 *)*piVar13;
  local_80 = 0;
  local_74 = iVar3;
  local_70 = param_5;
  local_6c = param_1;
  local_68 = iVar16;
  local_64 = uVar21;
  iVar16 = (**(code **)(puVar4 + 0x641d4))(*(int *)(puVar4 + 0x641a8) + -0x5354,iVar10);
  if (iVar16 == 0) {
    iVar3 = 7;
    (**(code **)(local_88 + -0x7f90))(0);
LAB_000f7558:
    (**(code **)(local_88 + -0x7f74))(local_80);
  }
  else {
    piVar5 = &local_80;
    uVar12 = 0xffffffff;
    local_90 = 0;
    iVar10 = iVar16;
    iVar3 = sqlite3_prepare_v2(*(undefined4 *)(iVar8 + 0xc),iVar16);
    (**(code **)(local_88 + -0x7f90))(iVar16);
    if (iVar3 != 0) goto LAB_000f7558;
    if (puVar2 == (undefined *)0x0) {
      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,0);
      iVar10 = *(int *)(iVar8 + 0x24);
      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5340,iVar10);
      *(undefined4 *)(iVar8 + 8) = uVar21;
    }
    else {
      uVar12 = (**(code **)(local_88 + -0x7d2c))(local_80,puVar2);
      piVar5 = (int *)(**(code **)(local_88 + -0x7d2c))(local_80,puVar2 + 1);
      iVar10 = *(int *)(iVar8 + 0x24);
      uVar21 = (**(code **)(local_88 + -0x7f88))(*(int *)(local_88 + -0x7fb4) + -0x5320,iVar10);
      *(undefined4 *)(iVar8 + 8) = uVar21;
    }
    iVar3 = 0x13;
    (**(code **)(local_88 + -0x7f74))(local_80);
  }
  if (local_7c == (undefined4 *)*piVar13) {
    return iVar3;
  }
  pcVar19 = *(code **)(local_88 + -0x7ba0);
  pcVar22 = FUN_000f75ec;
  puVar9 = local_7c;
  (*pcVar19)();
  puVar11 = &uStack_98;
  piVar14 = *(int **)(pcVar19 + 0x64440);
  iStack_b8 = 0;
  iStack_b4 = *piVar14;
  iStack_b0 = iVar8;
  iStack_ac = iVar3;
  piStack_a8 = piVar13;
  pcStack_a4 = pcVar22;
  uStack_98 = uVar12;
  piStack_94 = piVar5;
  puVar6 = (undefined4 *)(**(code **)(pcVar19 + 0x6402c))(iVar10,puVar11);
  if (puVar9[10] == 0) {
    if (puVar6 == (undefined4 *)0x0) {
      puVar9[10] = 7;
    }
    else {
      piVar5 = &iStack_b8;
      uVar12 = 0xffffffff;
      iStack_d0 = 0;
      puVar11 = puVar6;
      uVar21 = sqlite3_prepare_v2(*puVar9,puVar6,0xffffffff);
      puVar9[10] = uVar21;
    }
  }
  (**(code **)(pcVar19 + 0x64034))(puVar6);
  if (iStack_b4 == *piVar14) {
    return iStack_b8;
  }
  pcVar22 = *(code **)(pcVar19 + 0x64424);
  iVar16 = iStack_b4;
  (*pcVar22)();
  puStack_f8 = puVar1;
  piVar13 = *(int **)(pcVar22 + 0x6435c);
  iStack_11c = 0;
  iStack_10c = *piVar13;
  piStack_108 = piVar14;
  puStack_104 = puVar6;
  puStack_100 = puVar9;
  puStack_fc = puVar2;
  piStack_f4 = param_4;
  puStack_f0 = unaff_s6;
  iVar3 = (**(code **)(pcVar22 + 0x63f68))(*(int *)(pcVar22 + 0x63f2c) + -0x65b0,uVar12);
  if (iVar3 == 0) {
    iVar3 = (**(code **)(pcVar22 + 0x63f58))(*(int *)(pcVar22 + 0x63f2c) + -0x52f8,puVar11);
    if (iVar3 == 0) {
      iStack_11c = 7;
      goto LAB_000f778c;
    }
    uVar12 = 0xffffffff;
  }
  else {
    iStack_118 = 0;
    pcVar15 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1bd4);
    uStack_114 = 0;
    uStack_110 = 0;
    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x5288,&iStack_11c);
    pcVar20 = (code *)(*(int *)(pcVar22 + 0x6404c) + -0x1cd4);
    (*pcVar20)(&iStack_118,puVar11,&iStack_11c);
    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f2c) + -0x1e34,&iStack_11c);
    (*pcVar20)(&iStack_118,uVar12,&iStack_11c);
    (*pcVar15)(&iStack_118,*(int *)(pcVar22 + 0x63f18) + 0x5cfc,&iStack_11c);
    iVar3 = iStack_118;
    uVar12 = uStack_114;
    if (0 < (int)piVar5) {
      iVar10 = *(int *)(pcVar22 + 0x6404c);
      piVar14 = (int *)0x0;
      iVar17 = *(int *)(pcVar22 + 0x63f18);
      iVar18 = *(int *)(pcVar22 + 0x63f2c);
      iVar8 = *(int *)(pcVar22 + 0x63f18) + 0x53f4;
      do {
        while (pcVar7 = (char *)(iStack_cc + (int)piVar14), piVar14 = (int *)((int)piVar14 + 1),
              *pcVar7 != '\0') {
          (*pcVar15)(&iStack_118,iVar8,&iStack_11c);
          (*pcVar20)(&iStack_118,*(undefined4 *)(iStack_d0 + (int)piVar14 * 4 + -4),&iStack_11c);
          (*pcVar15)(&iStack_118,iVar18 + -0x5278,&iStack_11c);
          (*(code *)(iVar10 + -0x1b0c))(&iStack_118,piVar14,&iStack_11c);
          iVar8 = iVar17 + 0x5c88;
          iVar3 = iStack_118;
          uVar12 = uStack_114;
          if (piVar5 == piVar14) goto joined_r0x000f7930;
        }
        iVar3 = iStack_118;
        uVar12 = uStack_114;
      } while (piVar5 != piVar14);
    }
  }
joined_r0x000f7930:
  if (iStack_11c == 0) {
    iStack_11c = sqlite3_prepare_v2(iVar16,iVar3,uVar12,pcVar19 + 0x6bfc4,0);
  }
LAB_000f778c:
  (**(code **)(pcVar22 + 0x63f50))(iVar3);
  if (iStack_10c == *piVar13) {
    return iStack_11c;
  }
  (**(code **)(pcVar22 + 0x64340))();
  iVar16 = FUN_000f6c34();
  return iVar16;
}

