
int sqlite3_config(int op,...)

{
  undefined *puVar1;
  int iVar2;
  int iVar3;
  va_list ap;
  
  puVar1 = PTR___stack_chk_guard_00190e24;
  iVar2 = *(int *)PTR___stack_chk_guard_00190e24;
  if (*(int *)(PTR_aBuiltinFunc_29540_1408__00190948 + -0xa98) == 0) {
    if ((uint)op < 0x1e) {
                    /* WARNING: Could not emulate address calculation at 0x00072918 */
                    /* WARNING: Treating indirect jump as call */
      iVar2 = (*(code *)(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +
                                        op * 4 + 0x34dc)))();
      return iVar2;
    }
    iVar3 = 1;
  }
  else {
    iVar3 = 0x15;
    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,
                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,
                PTR_LAB_00190958 + 0x625c);
  }
  if (iVar2 == *(int *)puVar1) {
    return iVar3;
  }
  iVar2 = (*(code *)PTR___stack_chk_fail_00190df8)();
  return iVar2;
}



/* WARNING: Removing unreachable block (ram,0x0007330c) */

int sqlite3_config(uint param_1)

{
  int *piVar1;
  int iVar2;
  undefined4 uVar3;
  int iVar4;
  int *piVar5;
  uint uVar6;
  int iVar7;
  int iVar8;
  int *piVar9;
  int *piVar10;
  int iVar11;
  int iVar12;
  undefined *puVar13;
  code *pcVar14;
  
  puVar13 = PTR___stack_chk_guard_00190e24;
  iVar2 = *(int *)PTR___stack_chk_guard_00190e24;
  if (*(int *)(PTR_DAT_00190948 + -0xa98) == 0) {
    if (param_1 < 0x1e) {
                    /* WARNING: Could not emulate address calculation at 0x00072918 */
                    /* WARNING: Treating indirect jump as call */
      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +
                                          param_1 * 4 + 0x34dc)))();
      return iVar2;
    }
    iVar12 = 1;
  }
  else {
    iVar12 = 0x15;
    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,
                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,
                PTR_LAB_00190958 + 0x625c);
  }
  if (iVar2 == *(int *)puVar13) {
    return iVar12;
  }
  puVar13 = PTR___stack_chk_fail_00190df8;
  (*(code *)PTR___stack_chk_fail_00190df8)();
  iVar2 = *(int *)(puVar13 + 0x11dc10);
  if (*(int *)(iVar2 + -0xa98) != 0) {
    return 0;
  }
  iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))();
  if (iVar12 != 0) {
    return iVar12;
  }
  if (*(int *)(iVar2 + -0xb74) == 0) {
    iVar12 = 0;
  }
  else {
    iVar12 = (**(code **)(iVar2 + -0xb24))(2);
    if (iVar12 != 0) {
      (**(code **)(iVar2 + -0xb1c))(iVar12);
    }
  }
  *(undefined4 *)(iVar2 + -0xa90) = 1;
  if (*(int *)(iVar2 + -0xa8c) == 0) {
    if (*(int *)(iVar2 + -0xb4c) == 0) {
      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);
    }
    iVar8 = *(int *)(puVar13 + 0x11dc10);
    iVar4 = *(int *)(iVar2 + -0xb74);
    *(undefined4 *)(iVar8 + 0x1390) = 0;
    *(undefined4 *)(iVar8 + 0x1394) = 0;
    *(undefined4 *)(iVar8 + 0x1398) = 0;
    *(undefined4 *)(iVar8 + 0x139c) = 0;
    *(undefined4 *)(iVar8 + 0x13a0) = 0;
    *(undefined4 *)(iVar8 + 0x13a4) = 0;
    if (iVar4 == 0) {
      uVar3 = 0;
    }
    else {
      uVar3 = (**(code **)(iVar2 + -0xb24))(3);
    }
    iVar4 = *(int *)(iVar2 + -0xab0);
    *(undefined4 *)(iVar8 + 0x1390) = uVar3;
    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {
      *(undefined4 *)(iVar2 + -0xab0) = 0;
LAB_00072f48:
      *(undefined4 *)(iVar2 + -0xaac) = 0;
    }
    else if (*(int *)(iVar2 + -0xaa8) < 1) {
      *(undefined4 *)(iVar2 + -0xab0) = 0;
      goto LAB_00072f48;
    }
    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));
    if (iVar4 != 0) {
      *(undefined4 *)(iVar8 + 0x1390) = 0;
      *(undefined4 *)(iVar8 + 0x1394) = 0;
      *(undefined4 *)(iVar8 + 0x1398) = 0;
      *(undefined4 *)(iVar8 + 0x139c) = 0;
      *(undefined4 *)(iVar8 + 0x13a0) = 0;
      *(undefined4 *)(iVar8 + 0x13a4) = 0;
      if (iVar12 != 0) {
        (**(code **)(iVar2 + -0xb14))(iVar12);
      }
      return iVar4;
    }
  }
  *(undefined4 *)(iVar2 + -0xa8c) = 1;
  if ((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)) {
    iVar4 = (**(code **)(iVar2 + -0xb24))(1);
    *(int *)(iVar2 + -0xa80) = iVar4;
    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {
      if (iVar12 != 0) {
        (**(code **)(iVar2 + -0xb14))(iVar12);
      }
      return 7;
    }
  }
  *(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1;
  if (iVar12 != 0) {
    (**(code **)(iVar2 + -0xb14))(iVar12);
  }
  iVar4 = 0;
  if (*(int *)(iVar2 + -0xa80) == 0) {
    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;
LAB_00072e58:
    iVar8 = *(int *)(puVar13 + 0x11dc10);
    if (*(int *)(iVar2 + -0xa94) == 0) {
      pcVar14 = *(code **)(puVar13 + 0x11e020);
      *(undefined4 *)(iVar2 + -0xa94) = 1;
      (*pcVar14)(iVar8 + 0x1404,0,0x5c);
      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);
      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);
      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);
      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);
      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);
      if (*(int *)(iVar2 + -0xa88) == 0) {
        pcVar14 = *(code **)(iVar2 + -0xb00);
        if (pcVar14 == (code *)0x0) {
          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);
          pcVar14 = *(code **)(iVar2 + -0xb00);
        }
        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));
        if (iVar4 != 0) {
          *(undefined4 *)(iVar2 + -0xa94) = 0;
          goto LAB_00072e64;
        }
      }
      *(undefined4 *)(iVar2 + -0xa88) = 1;
      iVar4 = sqlite3_initialize();
      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {
        (**(code **)(puVar13 + 0x11dc34))(iVar4);
        iVar4 = sqlite3_os_init();
        if (iVar4 == 0) {
          iVar4 = sqlite3_vfs_find(0);
          uVar6 = *(uint *)(iVar4 + 4);
          iVar8 = *(int *)(puVar13 + 0x11dc10);
          if (uVar6 < 0x30) {
            uVar6 = 0x30;
          }
          *(int *)(iVar8 + 0x77c) = iVar4;
          *(uint *)(iVar8 + 0x76c) = uVar6;
          iVar4 = sqlite3_initialize();
          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {
            iVar8 = *(int *)(puVar13 + 0x11dc10);
            if (*(int *)(iVar8 + 0x1148) != 0) {
              piVar10 = *(int **)(iVar2 + -0xab0);
              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {
                *(undefined4 *)(iVar8 + 0x1154) = 0;
                *(undefined4 *)(iVar8 + 0x1170) = 0;
                *(undefined4 *)(iVar8 + 0x1158) = 0;
                *(undefined4 *)(iVar8 + 0x115c) = 1;
                *(int **)(iVar8 + 0x1160) = piVar10;
                *(undefined4 *)(iVar8 + 0x116c) = 0;
                *(undefined4 *)(iVar8 + 0x1174) = 0;
                *(int **)(iVar8 + 0x1164) = piVar10;
              }
              else {
                uVar6 = *(uint *)(iVar2 + -0xaac);
                *(int *)(iVar8 + 0x1170) = iVar11;
                *(int *)(iVar8 + 0x1158) = iVar11;
                iVar7 = iVar11 + -1;
                uVar6 = uVar6 & 0xfffffff8;
                *(uint *)(iVar8 + 0x1154) = uVar6;
                if (iVar11 < 0x5b) {
                  *(int **)(iVar8 + 0x1160) = piVar10;
                  *(undefined4 *)(iVar8 + 0x1174) = 0;
                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;
                }
                else {
                  *(int **)(iVar8 + 0x1160) = piVar10;
                  *(undefined4 *)(iVar8 + 0x1174) = 0;
                  *(undefined4 *)(iVar8 + 0x115c) = 10;
                }
                piVar1 = piVar10;
                piVar9 = (int *)0;
                do {
                  piVar5 = piVar1;
                  iVar7 = iVar7 + -1;
                  *piVar5 = (int)piVar9;
                  *(int **)(iVar8 + 0x116c) = piVar5;
                  piVar1 = (int *)((int)piVar5 + uVar6);
                  piVar9 = piVar5;
                } while (iVar7 != -1);
                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);
              }
            }
            *(undefined4 *)(iVar2 + -0xa94) = 0;
            *(undefined4 *)(iVar2 + -0xa98) = 1;
            goto LAB_00072e64;
          }
        }
        *(undefined4 *)(iVar2 + -0xa94) = 0;
      }
      else {
        iVar4 = 7;
        *(undefined4 *)(iVar2 + -0xa94) = 0;
      }
    }
  }
  else {
    (**(code **)(iVar2 + -0xb1c))();
    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;
  }
LAB_00072e64:
  if (*(int *)(iVar2 + -0xa80) != 0) {
    (**(code **)(iVar2 + -0xb14))();
  }
LAB_00072e7c:
  if (iVar12 == 0) {
    iVar12 = *(int *)(iVar2 + -0xa84) + -1;
    *(int *)(iVar2 + -0xa84) = iVar12;
    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {
      (**(code **)(iVar2 + -0xb20))();
      *(undefined4 *)(iVar2 + -0xa80) = 0;
    }
    return iVar4;
  }
  (**(code **)(iVar2 + -0xb1c))(iVar12);
  iVar8 = *(int *)(iVar2 + -0xa84) + -1;
  *(int *)(iVar2 + -0xa84) = iVar8;
  if ((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {
    (**(code **)(iVar2 + -0xb20))();
    *(undefined4 *)(iVar2 + -0xa80) = 0;
  }
  (**(code **)(iVar2 + -0xb14))(iVar12);
  return iVar4;
}


lui gp,0x12
addiu gp,gp,0x6070
addu gp,gp,t9
addiu sp,sp,-0x38
lw v1,-0x7fd8(gp)
sw s1,0x2c(sp)
sw s0,0x28(sp)
addiu s0,v1,-0xb78
sw gp,0x18(sp)
sw ra,0x34(sp)
sw s2,0x30(sp)
sw a1,0x3c(sp)
sw a2,0x40(sp)
sw a3,0x44(sp)
lw s1,-0x7afc(gp)
lw s2,0xe0(s0)
lw v0,0x0(s1)
sw v0,0x24(sp)
bne s2,zero,0x000729bc
_sltiu v0,a0,0x1e
addiu a1,sp,0x3c
beq v0,zero,0x000729f8
_sw a1,0x20(sp)
sll v0,a0,0x2
lw a0,-0x7fc4(gp)
addiu a0,a0,0x34dc
addu a0,a0,v0
lw v0,0x0(a0)
addu v0,v0,gp
jr v0
_nop
lw v0,0x20(sp)
li a0,-0x8
addiu v0,v0,0x7
and v0,v0,a0
addiu v1,v0,0xf
lw a1,0x0(v0)
and v1,v1,a0
lw a3,0x4(v0)
lw a0,0x0(v1)
bne a0,zero,0x0007296c
_lw v0,0x4(v1)
lui v1,0x7fff
addiu v1,v1,0x1
sltu v1,v0,v1
bne v1,zero,0x00072974
_nop
or a0,zero,zero
lui v0,0x7fff
bltz a1,0x00072ce4
_or a2,zero,zero
beq a0,a1,0x00072d1c
_or v1,v0,zero
sw zero,0xc0(s0)
sw v0,0xc4(s0)
sw a2,0xb8(s0)
sw v1,0xbc(s0)
lw a0,0x24(sp)
or v0,s2,zero
lw v1,0x0(s1)
bne a0,v1,0x00072d2c
_lw ra,0x34(sp)
lw s2,0x30(sp)
lw s1,0x2c(sp)
lw s0,0x28(sp)
jr ra
_addiu sp,sp,0x38
lw v0,-0x7fc8(gp)
lui a3,0x2
lw a2,-0x7fc4(gp)
li a0,0x15
lw a1,-0x7fc4(gp)
addiu a3,a3,0x59ec
addiu v0,v0,0x625c
lw t9,-0x7d40(gp)
addiu a2,a2,-0x6380
addiu a1,a1,-0x6378
sw v0,0x10(sp)
bal 0x0008c2d4
_li s2,0x15
b 0x00072994
_lw gp,0x18(sp)
b 0x00072994
_li s2,0x1
lw v0,0x20(sp)
li v1,-0x8
addiu v0,v0,0x7
and v0,v0,v1
lw v1,0x4(v0)
lw v0,0x0(v0)
sw v1,0x10c(s0)
b 0x00072994
_sw v0,0x108(s0)
lw v0,0x20(sp)
lw v0,0x0(v0)
b 0x00072994
_sw v0,0x14(s0)
lw v0,0x20(sp)
lw v0,0x0(v0)
b 0x00072994
_sw v0,0x28(s0)
lw v0,0x20(sp)
lw v0,0x0(v0)
b 0x00072994
_sw v0,0xdc(s0)
lw v0,0x20(sp)
li v1,0xa0
lw v0,0x0(v0)
b 0x00072994
_sw v1,0x0(v0)
lw v0,0x20(sp)
lw v0,0x0(v0)
b 0x00072994
_sw v0,0x10(s0)
lw v0,0x20(sp)
addiu s0,s0,0x4c
lw v0,0x0(v0)
addiu a3,v0,0x20
lw a2,0x0(v0)
addiu v0,v0,0x10
addiu s0,s0,0x10
lw a1,-0xc(v0)
lw a0,-0x8(v0)
lw v1,-0x4(v0)
sw a2,-0x10(s0)
sw a1,-0xc(s0)
sw a0,-0x8(s0)
bne v0,a3,0x00072a88
_sw v1,-0x4(s0)
lw v0,0x0(v0)
b 0x00072994
_sw v0,0x0(s0)
lw v0,0x20(sp)
lw v0,0x0(v0)
b 0x00072994
_sw v0,-0xb78(v1)
lw v0,0x20(sp)
lw v1,0x0(v0)
sw v1,0xc8(s0)
lw v1,0x4(v0)
sw v1,0xcc(s0)
lw v0,0x8(v0)
b 0x00072994
_sw v0,0xd0(s0)
lw v0,0x2c(s0)
beq v0,zero,0x00072d04
_li a0,0x4
lw v0,0x20(sp)
lw t2,0x2c(s0)
lw t1,0x30(s0)
lw t0,0x34(s0)
lw v0,0x0(v0)
lw a3,0x38(s0)
lw a2,0x3c(s0)
lw a1,0x40(s0)
lw a0,0x44(s0)
lw v1,0x48(s0)
sw t2,0x0(v0)
sw t1,0x4(v0)
sw t0,0x8(v0)
sw a3,0xc(v0)
sw a2,0x10(v0)
sw a1,0x14(v0)
sw a0,0x18(v0)
b 0x00072994
_sw v1,0x1c(v0)
lw v0,0x20(sp)
lw v0,0x0(v0)
lw t1,0x0(v0)
lw t0,0x4(v0)
lw a3,0x8(v0)
lw a2,0xc(v0)
lw a1,0x10(v0)
lw a0,0x14(v0)
lw v1,0x18(v0)
lw v0,0x1c(v0)
sw t1,0x2c(s0)
sw t0,0x30(s0)
sw a3,0x34(s0)
sw a2,0x38(s0)
sw a1,0x3c(s0)
sw a0,0x40(s0)
sw v1,0x44(s0)
b 0x00072994
_sw v0,0x48(s0)
li v0,0x1
sw zero,0x8(s0)
b 0x00072994
_sw v0,0x4(s0)
sw zero,0x4(s0)
b 0x00072994
_sw zero,0x8(s0)
li v0,0x1
sw v0,0x4(s0)
b 0x00072994
_sw v0,0x8(s0)
lw v0,0x20(sp)
lw v0,0x0(v0)
b 0x00072994
_sw v0,0xc(s0)
lw v0,0x20(sp)
lw v1,0x0(v0)
sw v1,0xfc(s0)
lw v0,0x4(v0)
b 0x00072994
_sw v0,0x100(s0)
lw v0,0x20(sp)
lw v1,0x0(v0)
sw v1,0x20(s0)
lw v0,0x4(v0)
b 0x00072994
_sw v0,0x24(s0)
lw v1,0x20(sp)
addiu v0,s0,0x4c
addiu s0,s0,0x6c
lw v1,0x0(v1)
lw a3,0x0(v0)
addiu v0,v0,0x10
addiu v1,v1,0x10
lw a2,-0xc(v0)
lw a1,-0x8(v0)
lw a0,-0x4(v0)
sw a3,-0x10(v1)
sw a2,-0xc(v1)
sw a1,-0x8(v1)
bne v0,s0,0x00072c10
_sw a0,-0x4(v1)
lw v0,0x0(v0)
b 0x00072994
_sw v0,0x0(v1)
lw v0,0x78(s0)
beq v0,zero,0x00072cec
_lw a1,-0x7fd8(gp)
lw v1,0x20(sp)
addiu v0,s0,0x70
addiu s0,s0,0xa0
lw v1,0x0(v1)
lw a3,0x0(v0)
addiu v0,v0,0x10
addiu v1,v1,0x10
lw a2,-0xc(v0)
lw a1,-0x8(v0)
lw a0,-0x4(v0)
sw a3,-0x10(v1)
sw a2,-0xc(v1)
sw a1,-0x8(v1)
bne v0,s0,0x00072c64
_sw a0,-0x4(v1)
lw v0,0x0(v0)
b 0x00072994
_sw v0,0x0(v1)
lw v0,0x20(sp)
addiu s0,s0,0x70
lw v0,0x0(v0)
addiu a3,v0,0x30
lw a2,0x0(v0)
addiu v0,v0,0x10
addiu s0,s0,0x10
lw a1,-0xc(v0)
lw a0,-0x8(v0)
lw v1,-0x4(v0)
sw a2,-0x10(s0)
sw a1,-0xc(s0)
sw a0,-0x8(s0)
bne v0,a3,0x00072cac
_sw v1,-0x4(s0)
lw v0,0x0(v0)
b 0x00072994
_sw v0,0x0(s0)
b 0x00072984
_or v1,zero,zero
li a0,0x12
lw t9,-0x7e7c(gp)
bal 0x000728b0
_addiu a1,a1,-0x2210
b 0x00072c54
_lw gp,0x18(sp)
lw a1,-0x7fd8(gp)
lw t9,-0x7e7c(gp)
bal 0x000728b0
_addiu a1,a1,-0x21c4
b 0x00072afc
_lw gp,0x18(sp)
sltu a0,a3,v0
movn a2,a1,a0
b 0x00072984
_movn v1,a3,a0
lw t9,-0x7b28(gp)
jalr t9
_nop
(translation_unit "/* WARNING: Removing unreachable block (ram,0x0007330c) */\n\nint sqlite3_config(uint param_1)\n\n{\n  int *piVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  int *piVar5;\n  uint uVar6;\n  int iVar7;\n  int iVar8;\n  int *piVar9;\n  int *piVar10;\n  int iVar11;\n  int iVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  \n  puVar13 = PTR___stack_chk_guard_00190e24;\n  iVar2 = *(int *)PTR___stack_chk_guard_00190e24;\n  if (*(int *)(PTR_DAT_00190948 + -0xa98) == 0) {\n    if (param_1 < 0x1e) {\n                    /* WARNING: Could not emulate address calculation at 0x00072918 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar12 = 1;\n  }\n  else {\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }\n  if (iVar2 == *(int *)puVar13) {\n    return iVar12;\n  }\n  puVar13 = PTR___stack_chk_fail_00190df8;\n  (*(code *)PTR___stack_chk_fail_00190df8)();\n  iVar2 = *(int *)(puVar13 + 0x11dc10);\n  if (*(int *)(iVar2 + -0xa98) != 0) {\n    return 0;\n  }\n  iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))();\n  if (iVar12 != 0) {\n    return iVar12;\n  }\n  if (*(int *)(iVar2 + -0xb74) == 0) {\n    iVar12 = 0;\n  }\n  else {\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa90) = 1;\n  if (*(int *)(iVar2 + -0xa8c) == 0) {\n    if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    iVar4 = *(int *)(iVar2 + -0xb74);\n    *(undefined4 *)(iVar8 + 0x1390) = 0;\n    *(undefined4 *)(iVar8 + 0x1394) = 0;\n    *(undefined4 *)(iVar8 + 0x1398) = 0;\n    *(undefined4 *)(iVar8 + 0x139c) = 0;\n    *(undefined4 *)(iVar8 + 0x13a0) = 0;\n    *(undefined4 *)(iVar8 + 0x13a4) = 0;\n    if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }\n    iVar4 = *(int *)(iVar2 + -0xab0);\n    *(undefined4 *)(iVar8 + 0x1390) = uVar3;\n    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }\n    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));\n    if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa8c) = 1;\n  if ((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)) {\n    iVar4 = (**(code **)(iVar2 + -0xb24))(1);\n    *(int *)(iVar2 + -0xa80) = iVar4;\n    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }\n  }\n  *(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1;\n  if (iVar12 != 0) {\n    (**(code **)(iVar2 + -0xb14))(iVar12);\n  }\n  iVar4 = 0;\n  if (*(int *)(iVar2 + -0xa80) == 0) {\n    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;\nLAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }\n  }\n  else {\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }\nLAB_00072e64:\n  if (*(int *)(iVar2 + -0xa80) != 0) {\n    (**(code **)(iVar2 + -0xb14))();\n  }\nLAB_00072e7c:\n  if (iVar12 == 0) {\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }\n  (**(code **)(iVar2 + -0xb1c))(iVar12);\n  iVar8 = *(int *)(iVar2 + -0xa84) + -1;\n  *(int *)(iVar2 + -0xa84) = iVar8;\n  if ((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n    (**(code **)(iVar2 + -0xb20))();\n    *(undefined4 *)(iVar2 + -0xa80) = 0;\n  }\n  (**(code **)(iVar2 + -0xb14))(iVar12);\n  return iVar4;\n}\n\n" comment (function_definition "int sqlite3_config(uint param_1)\n\n{\n  int *piVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  int *piVar5;\n  uint uVar6;\n  int iVar7;\n  int iVar8;\n  int *piVar9;\n  int *piVar10;\n  int iVar11;\n  int iVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  \n  puVar13 = PTR___stack_chk_guard_00190e24;\n  iVar2 = *(int *)PTR___stack_chk_guard_00190e24;\n  if (*(int *)(PTR_DAT_00190948 + -0xa98) == 0) {\n    if (param_1 < 0x1e) {\n                    /* WARNING: Could not emulate address calculation at 0x00072918 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar12 = 1;\n  }\n  else {\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }\n  if (iVar2 == *(int *)puVar13) {\n    return iVar12;\n  }\n  puVar13 = PTR___stack_chk_fail_00190df8;\n  (*(code *)PTR___stack_chk_fail_00190df8)();\n  iVar2 = *(int *)(puVar13 + 0x11dc10);\n  if (*(int *)(iVar2 + -0xa98) != 0) {\n    return 0;\n  }\n  iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))();\n  if (iVar12 != 0) {\n    return iVar12;\n  }\n  if (*(int *)(iVar2 + -0xb74) == 0) {\n    iVar12 = 0;\n  }\n  else {\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa90) = 1;\n  if (*(int *)(iVar2 + -0xa8c) == 0) {\n    if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    iVar4 = *(int *)(iVar2 + -0xb74);\n    *(undefined4 *)(iVar8 + 0x1390) = 0;\n    *(undefined4 *)(iVar8 + 0x1394) = 0;\n    *(undefined4 *)(iVar8 + 0x1398) = 0;\n    *(undefined4 *)(iVar8 + 0x139c) = 0;\n    *(undefined4 *)(iVar8 + 0x13a0) = 0;\n    *(undefined4 *)(iVar8 + 0x13a4) = 0;\n    if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }\n    iVar4 = *(int *)(iVar2 + -0xab0);\n    *(undefined4 *)(iVar8 + 0x1390) = uVar3;\n    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }\n    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));\n    if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa8c) = 1;\n  if ((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)) {\n    iVar4 = (**(code **)(iVar2 + -0xb24))(1);\n    *(int *)(iVar2 + -0xa80) = iVar4;\n    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }\n  }\n  *(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1;\n  if (iVar12 != 0) {\n    (**(code **)(iVar2 + -0xb14))(iVar12);\n  }\n  iVar4 = 0;\n  if (*(int *)(iVar2 + -0xa80) == 0) {\n    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;\nLAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }\n  }\n  else {\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }\nLAB_00072e64:\n  if (*(int *)(iVar2 + -0xa80) != 0) {\n    (**(code **)(iVar2 + -0xb14))();\n  }\nLAB_00072e7c:\n  if (iVar12 == 0) {\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }\n  (**(code **)(iVar2 + -0xb1c))(iVar12);\n  iVar8 = *(int *)(iVar2 + -0xa84) + -1;\n  *(int *)(iVar2 + -0xa84) = iVar8;\n  if ((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n    (**(code **)(iVar2 + -0xb20))();\n    *(undefined4 *)(iVar2 + -0xa80) = 0;\n  }\n  (**(code **)(iVar2 + -0xb14))(iVar12);\n  return iVar4;\n}" primitive_type (function_declarator "sqlite3_config(uint param_1)" identifier (parameter_list "(uint param_1)" ( (parameter_declaration "uint param_1" type_identifier identifier) ))) (compound_statement "{\n  int *piVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  int *piVar5;\n  uint uVar6;\n  int iVar7;\n  int iVar8;\n  int *piVar9;\n  int *piVar10;\n  int iVar11;\n  int iVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  \n  puVar13 = PTR___stack_chk_guard_00190e24;\n  iVar2 = *(int *)PTR___stack_chk_guard_00190e24;\n  if (*(int *)(PTR_DAT_00190948 + -0xa98) == 0) {\n    if (param_1 < 0x1e) {\n                    /* WARNING: Could not emulate address calculation at 0x00072918 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar12 = 1;\n  }\n  else {\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }\n  if (iVar2 == *(int *)puVar13) {\n    return iVar12;\n  }\n  puVar13 = PTR___stack_chk_fail_00190df8;\n  (*(code *)PTR___stack_chk_fail_00190df8)();\n  iVar2 = *(int *)(puVar13 + 0x11dc10);\n  if (*(int *)(iVar2 + -0xa98) != 0) {\n    return 0;\n  }\n  iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))();\n  if (iVar12 != 0) {\n    return iVar12;\n  }\n  if (*(int *)(iVar2 + -0xb74) == 0) {\n    iVar12 = 0;\n  }\n  else {\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa90) = 1;\n  if (*(int *)(iVar2 + -0xa8c) == 0) {\n    if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    iVar4 = *(int *)(iVar2 + -0xb74);\n    *(undefined4 *)(iVar8 + 0x1390) = 0;\n    *(undefined4 *)(iVar8 + 0x1394) = 0;\n    *(undefined4 *)(iVar8 + 0x1398) = 0;\n    *(undefined4 *)(iVar8 + 0x139c) = 0;\n    *(undefined4 *)(iVar8 + 0x13a0) = 0;\n    *(undefined4 *)(iVar8 + 0x13a4) = 0;\n    if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }\n    iVar4 = *(int *)(iVar2 + -0xab0);\n    *(undefined4 *)(iVar8 + 0x1390) = uVar3;\n    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }\n    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));\n    if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa8c) = 1;\n  if ((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)) {\n    iVar4 = (**(code **)(iVar2 + -0xb24))(1);\n    *(int *)(iVar2 + -0xa80) = iVar4;\n    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }\n  }\n  *(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1;\n  if (iVar12 != 0) {\n    (**(code **)(iVar2 + -0xb14))(iVar12);\n  }\n  iVar4 = 0;\n  if (*(int *)(iVar2 + -0xa80) == 0) {\n    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;\nLAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }\n  }\n  else {\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }\nLAB_00072e64:\n  if (*(int *)(iVar2 + -0xa80) != 0) {\n    (**(code **)(iVar2 + -0xb14))();\n  }\nLAB_00072e7c:\n  if (iVar12 == 0) {\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }\n  (**(code **)(iVar2 + -0xb1c))(iVar12);\n  iVar8 = *(int *)(iVar2 + -0xa84) + -1;\n  *(int *)(iVar2 + -0xa84) = iVar8;\n  if ((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n    (**(code **)(iVar2 + -0xb20))();\n    *(undefined4 *)(iVar2 + -0xa80) = 0;\n  }\n  (**(code **)(iVar2 + -0xb14))(iVar12);\n  return iVar4;\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "int *piVar9;" primitive_type (pointer_declarator "*piVar9" * identifier) ;) (declaration "int *piVar10;" primitive_type (pointer_declarator "*piVar10" * identifier) ;) (declaration "int iVar11;" primitive_type identifier ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "undefined *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "code *pcVar14;" type_identifier (pointer_declarator "*pcVar14" * identifier) ;) (expression_statement "puVar13 = PTR___stack_chk_guard_00190e24;" (assignment_expression "puVar13 = PTR___stack_chk_guard_00190e24" identifier = identifier) ;) (expression_statement "iVar2 = *(int *)PTR___stack_chk_guard_00190e24;" (assignment_expression "iVar2 = *(int *)PTR___stack_chk_guard_00190e24" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_00190e24" * (cast_expression "(int *)PTR___stack_chk_guard_00190e24" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (*(int *)(PTR_DAT_00190948 + -0xa98) == 0) {\n    if (param_1 < 0x1e) {\n                    /* WARNING: Could not emulate address calculation at 0x00072918 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar12 = 1;\n  }\n  else {\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }" if (parenthesized_expression "(*(int *)(PTR_DAT_00190948 + -0xa98) == 0)" ( (binary_expression "*(int *)(PTR_DAT_00190948 + -0xa98) == 0" (pointer_expression "*(int *)(PTR_DAT_00190948 + -0xa98)" * (cast_expression "(int *)(PTR_DAT_00190948 + -0xa98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_00190948 + -0xa98)" ( (binary_expression "PTR_DAT_00190948 + -0xa98" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (param_1 < 0x1e) {\n                    /* WARNING: Could not emulate address calculation at 0x00072918 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar12 = 1;\n  }" { (if_statement "if (param_1 < 0x1e) {\n                    /* WARNING: Could not emulate address calculation at 0x00072918 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }" if (parenthesized_expression "(param_1 < 0x1e)" ( (binary_expression "param_1 < 0x1e" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not emulate address calculation at 0x00072918 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }" { comment comment (expression_statement "iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();" (assignment_expression "iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))()" identifier = (call_expression "(*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))()" (parenthesized_expression "(*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))" ( (pointer_expression "*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc))" * (cast_expression "(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc))" ( (binary_expression "&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)" (pointer_expression "&_gp_1" & identifier) + (pointer_expression "*(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)" * (cast_expression "(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)" ( (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc" (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4" identifier + (binary_expression "param_1 * 4" identifier * number_literal)) + number_literal) ))))) )))) )) (argument_list "()" ( )))) ;) (return_statement "return iVar2;" return identifier ;) })) (expression_statement "iVar12 = 1;" (assignment_expression "iVar12 = 1" identifier = number_literal) ;) }) (else_clause "else {\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }" else (compound_statement "{\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }" { (expression_statement "iVar12 = 0x15;" (assignment_expression "iVar12 = 0x15" identifier = number_literal) ;) (expression_statement "sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);" (call_expression "sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c)" identifier (argument_list "(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c)" ( number_literal , (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378" identifier + number_literal) , (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380" identifier + number_literal) , number_literal , (binary_expression "PTR_LAB_00190958 + 0x625c" identifier + number_literal) ))) ;) }))) (if_statement "if (iVar2 == *(int *)puVar13) {\n    return iVar12;\n  }" if (parenthesized_expression "(iVar2 == *(int *)puVar13)" ( (binary_expression "iVar2 == *(int *)puVar13" identifier == (pointer_expression "*(int *)puVar13" * (cast_expression "(int *)puVar13" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return iVar12;\n  }" { (return_statement "return iVar12;" return identifier ;) })) (expression_statement "puVar13 = PTR___stack_chk_fail_00190df8;" (assignment_expression "puVar13 = PTR___stack_chk_fail_00190df8" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_00190df8)();" (call_expression "(*(code *)PTR___stack_chk_fail_00190df8)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_00190df8)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_00190df8" * (cast_expression "(code *)PTR___stack_chk_fail_00190df8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "iVar2 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar2 = *(int *)(puVar13 + 0x11dc10)" identifier = (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(iVar2 + -0xa98) != 0) {\n    return 0;\n  }" if (parenthesized_expression "(*(int *)(iVar2 + -0xa98) != 0)" ( (binary_expression "*(int *)(iVar2 + -0xa98) != 0" (pointer_expression "*(int *)(iVar2 + -0xa98)" * (cast_expression "(int *)(iVar2 + -0xa98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa98)" ( (binary_expression "iVar2 + -0xa98" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))();" (assignment_expression "iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))()" identifier = (call_expression "(*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))()" (parenthesized_expression "(*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))" ( (pointer_expression "*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88)" * (cast_expression "(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar13 + 0x11de70) + -0x5e88)" ( (binary_expression "*(int *)(puVar13 + 0x11de70) + -0x5e88" (pointer_expression "*(int *)(puVar13 + 0x11de70)" * (cast_expression "(int *)(puVar13 + 0x11de70)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11de70)" ( (binary_expression "puVar13 + 0x11de70" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar12 != 0) {\n    return iVar12;\n  }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n    return iVar12;\n  }" { (return_statement "return iVar12;" return identifier ;) })) (if_statement "if (*(int *)(iVar2 + -0xb74) == 0) {\n    iVar12 = 0;\n  }\n  else {\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }" if (parenthesized_expression "(*(int *)(iVar2 + -0xb74) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xb74) == 0" (pointer_expression "*(int *)(iVar2 + -0xb74)" * (cast_expression "(int *)(iVar2 + -0xb74)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb74)" ( (binary_expression "iVar2 + -0xb74" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    iVar12 = 0;\n  }" { (expression_statement "iVar12 = 0;" (assignment_expression "iVar12 = 0" identifier = number_literal) ;) }) (else_clause "else {\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }" else (compound_statement "{\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }" { (expression_statement "iVar12 = (**(code **)(iVar2 + -0xb24))(2);" (assignment_expression "iVar12 = (**(code **)(iVar2 + -0xb24))(2)" identifier = (call_expression "(**(code **)(iVar2 + -0xb24))(2)" (parenthesized_expression "(**(code **)(iVar2 + -0xb24))" ( (pointer_expression "**(code **)(iVar2 + -0xb24)" * (pointer_expression "*(code **)(iVar2 + -0xb24)" * (cast_expression "(code **)(iVar2 + -0xb24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb24)" ( (binary_expression "iVar2 + -0xb24" identifier + number_literal) ))))) )) (argument_list "(2)" ( number_literal )))) ;) (if_statement "if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }" { (expression_statement "(**(code **)(iVar2 + -0xb1c))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb1c))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb1c))" ( (pointer_expression "**(code **)(iVar2 + -0xb1c)" * (pointer_expression "*(code **)(iVar2 + -0xb1c)" * (cast_expression "(code **)(iVar2 + -0xb1c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb1c)" ( (binary_expression "iVar2 + -0xb1c" identifier + number_literal) ))))) )) (argument_list "(iVar12)" ( identifier ))) ;) })) }))) (expression_statement "*(undefined4 *)(iVar2 + -0xa90) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa90) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa90)" * (cast_expression "(undefined4 *)(iVar2 + -0xa90)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa90)" ( (binary_expression "iVar2 + -0xa90" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (*(int *)(iVar2 + -0xa8c) == 0) {\n    if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    iVar4 = *(int *)(iVar2 + -0xb74);\n    *(undefined4 *)(iVar8 + 0x1390) = 0;\n    *(undefined4 *)(iVar8 + 0x1394) = 0;\n    *(undefined4 *)(iVar8 + 0x1398) = 0;\n    *(undefined4 *)(iVar8 + 0x139c) = 0;\n    *(undefined4 *)(iVar8 + 0x13a0) = 0;\n    *(undefined4 *)(iVar8 + 0x13a4) = 0;\n    if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }\n    iVar4 = *(int *)(iVar2 + -0xab0);\n    *(undefined4 *)(iVar8 + 0x1390) = uVar3;\n    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }\n    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));\n    if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }\n  }" if (parenthesized_expression "(*(int *)(iVar2 + -0xa8c) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xa8c) == 0" (pointer_expression "*(int *)(iVar2 + -0xa8c)" * (cast_expression "(int *)(iVar2 + -0xa8c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa8c)" ( (binary_expression "iVar2 + -0xa8c" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    iVar4 = *(int *)(iVar2 + -0xb74);\n    *(undefined4 *)(iVar8 + 0x1390) = 0;\n    *(undefined4 *)(iVar8 + 0x1394) = 0;\n    *(undefined4 *)(iVar8 + 0x1398) = 0;\n    *(undefined4 *)(iVar8 + 0x139c) = 0;\n    *(undefined4 *)(iVar8 + 0x13a0) = 0;\n    *(undefined4 *)(iVar8 + 0x13a4) = 0;\n    if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }\n    iVar4 = *(int *)(iVar2 + -0xab0);\n    *(undefined4 *)(iVar8 + 0x1390) = uVar3;\n    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }\n    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));\n    if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }\n  }" { (if_statement "if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }" if (parenthesized_expression "(*(int *)(iVar2 + -0xb4c) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xb4c) == 0" (pointer_expression "*(int *)(iVar2 + -0xb4c)" * (cast_expression "(int *)(iVar2 + -0xb4c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb4c)" ( (binary_expression "iVar2 + -0xb4c" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }" { (expression_statement "sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);" (call_expression "sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4)" identifier (argument_list "(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4)" ( number_literal , (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x21c4" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "iVar8 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar8 = *(int *)(puVar13 + 0x11dc10)" identifier = (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) ))))) ;) (expression_statement "iVar4 = *(int *)(iVar2 + -0xb74);" (assignment_expression "iVar4 = *(int *)(iVar2 + -0xb74)" identifier = (pointer_expression "*(int *)(iVar2 + -0xb74)" * (cast_expression "(int *)(iVar2 + -0xb74)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb74)" ( (binary_expression "iVar2 + -0xb74" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1390) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1390) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1390)" * (cast_expression "(undefined4 *)(iVar8 + 0x1390)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1390)" ( (binary_expression "iVar8 + 0x1390" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1394) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1394) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1394)" * (cast_expression "(undefined4 *)(iVar8 + 0x1394)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1394)" ( (binary_expression "iVar8 + 0x1394" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1398) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1398) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1398)" * (cast_expression "(undefined4 *)(iVar8 + 0x1398)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1398)" ( (binary_expression "iVar8 + 0x1398" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x139c) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x139c) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x139c)" * (cast_expression "(undefined4 *)(iVar8 + 0x139c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x139c)" ( (binary_expression "iVar8 + 0x139c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x13a0) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x13a0) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x13a0)" * (cast_expression "(undefined4 *)(iVar8 + 0x13a0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x13a0)" ( (binary_expression "iVar8 + 0x13a0" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x13a4) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x13a4) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x13a4)" * (cast_expression "(undefined4 *)(iVar8 + 0x13a4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x13a4)" ( (binary_expression "iVar8 + 0x13a4" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar3 = 0;\n    }" { (expression_statement "uVar3 = 0;" (assignment_expression "uVar3 = 0" identifier = number_literal) ;) }) (else_clause "else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }" else (compound_statement "{\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }" { (expression_statement "uVar3 = (**(code **)(iVar2 + -0xb24))(3);" (assignment_expression "uVar3 = (**(code **)(iVar2 + -0xb24))(3)" identifier = (call_expression "(**(code **)(iVar2 + -0xb24))(3)" (parenthesized_expression "(**(code **)(iVar2 + -0xb24))" ( (pointer_expression "**(code **)(iVar2 + -0xb24)" * (pointer_expression "*(code **)(iVar2 + -0xb24)" * (cast_expression "(code **)(iVar2 + -0xb24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb24)" ( (binary_expression "iVar2 + -0xb24" identifier + number_literal) ))))) )) (argument_list "(3)" ( number_literal )))) ;) }))) (expression_statement "iVar4 = *(int *)(iVar2 + -0xab0);" (assignment_expression "iVar4 = *(int *)(iVar2 + -0xab0)" identifier = (pointer_expression "*(int *)(iVar2 + -0xab0)" * (cast_expression "(int *)(iVar2 + -0xab0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xab0)" ( (binary_expression "iVar2 + -0xab0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1390) = uVar3;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1390) = uVar3" (pointer_expression "*(undefined4 *)(iVar8 + 0x1390)" * (cast_expression "(undefined4 *)(iVar8 + 0x1390)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1390)" ( (binary_expression "iVar8 + 0x1390" identifier + number_literal) )))) = identifier) ;) (if_statement "if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }" if (parenthesized_expression "((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200))" ( (binary_expression "(iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)" (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) || (parenthesized_expression "(*(int *)(iVar2 + -0xaac) < 0x200)" ( (binary_expression "*(int *)(iVar2 + -0xaac) < 0x200" (pointer_expression "*(int *)(iVar2 + -0xaac)" * (cast_expression "(int *)(iVar2 + -0xaac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xaac)" ( (binary_expression "iVar2 + -0xaac" identifier + number_literal) )))) < number_literal) ))) )) (compound_statement "{\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }" { (expression_statement "*(undefined4 *)(iVar2 + -0xab0) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xab0) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xab0)" * (cast_expression "(undefined4 *)(iVar2 + -0xab0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xab0)" ( (binary_expression "iVar2 + -0xab0" identifier + number_literal) )))) = number_literal) ;) (labeled_statement "LAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;" statement_identifier : (expression_statement "*(undefined4 *)(iVar2 + -0xaac) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xaac) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xaac)" * (cast_expression "(undefined4 *)(iVar2 + -0xaac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xaac)" ( (binary_expression "iVar2 + -0xaac" identifier + number_literal) )))) = number_literal) ;)) }) (else_clause "else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }" else (if_statement "if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }" if (parenthesized_expression "(*(int *)(iVar2 + -0xaa8) < 1)" ( (binary_expression "*(int *)(iVar2 + -0xaa8) < 1" (pointer_expression "*(int *)(iVar2 + -0xaa8)" * (cast_expression "(int *)(iVar2 + -0xaa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xaa8)" ( (binary_expression "iVar2 + -0xaa8" identifier + number_literal) )))) < number_literal) )) (compound_statement "{\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }" { (expression_statement "*(undefined4 *)(iVar2 + -0xab0) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xab0) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xab0)" * (cast_expression "(undefined4 *)(iVar2 + -0xab0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xab0)" ( (binary_expression "iVar2 + -0xab0" identifier + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_00072f48;" goto statement_identifier ;) })))) (expression_statement "iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));" (assignment_expression "iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30))" identifier = (call_expression "(**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30))" (parenthesized_expression "(**(code **)(iVar2 + -0xb38))" ( (pointer_expression "**(code **)(iVar2 + -0xb38)" * (pointer_expression "*(code **)(iVar2 + -0xb38)" * (cast_expression "(code **)(iVar2 + -0xb38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb38)" ( (binary_expression "iVar2 + -0xb38" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar2 + -0xb30))" ( (pointer_expression "*(undefined4 *)(iVar2 + -0xb30)" * (cast_expression "(undefined4 *)(iVar2 + -0xb30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb30)" ( (binary_expression "iVar2 + -0xb30" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }" { (expression_statement "*(undefined4 *)(iVar8 + 0x1390) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1390) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1390)" * (cast_expression "(undefined4 *)(iVar8 + 0x1390)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1390)" ( (binary_expression "iVar8 + 0x1390" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1394) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1394) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1394)" * (cast_expression "(undefined4 *)(iVar8 + 0x1394)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1394)" ( (binary_expression "iVar8 + 0x1394" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1398) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1398) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1398)" * (cast_expression "(undefined4 *)(iVar8 + 0x1398)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1398)" ( (binary_expression "iVar8 + 0x1398" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x139c) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x139c) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x139c)" * (cast_expression "(undefined4 *)(iVar8 + 0x139c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x139c)" ( (binary_expression "iVar8 + 0x139c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x13a0) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x13a0) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x13a0)" * (cast_expression "(undefined4 *)(iVar8 + 0x13a0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x13a0)" ( (binary_expression "iVar8 + 0x13a0" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x13a4) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x13a4) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x13a4)" * (cast_expression "(undefined4 *)(iVar8 + 0x13a4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x13a4)" ( (binary_expression "iVar8 + 0x13a4" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }" { (expression_statement "(**(code **)(iVar2 + -0xb14))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb14))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" ( (pointer_expression "**(code **)(iVar2 + -0xb14)" * (pointer_expression "*(code **)(iVar2 + -0xb14)" * (cast_expression "(code **)(iVar2 + -0xb14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb14)" ( (binary_expression "iVar2 + -0xb14" identifier + number_literal) ))))) )) (argument_list "(iVar12)" ( identifier ))) ;) })) (return_statement "return iVar4;" return identifier ;) })) })) (expression_statement "*(undefined4 *)(iVar2 + -0xa8c) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa8c) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa8c)" * (cast_expression "(undefined4 *)(iVar2 + -0xa8c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa8c)" ( (binary_expression "iVar2 + -0xa8c" identifier + number_literal) )))) = number_literal) ;) (if_statement "if ((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)) {\n    iVar4 = (**(code **)(iVar2 + -0xb24))(1);\n    *(int *)(iVar2 + -0xa80) = iVar4;\n    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }\n  }" if (parenthesized_expression "((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0))" ( (binary_expression "(*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)" (parenthesized_expression "(*(int *)(iVar2 + -0xa80) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xa80) == 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" * (cast_expression "(int *)(iVar2 + -0xa80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) == number_literal) )) && (parenthesized_expression "(*(int *)(iVar2 + -0xb74) != 0)" ( (binary_expression "*(int *)(iVar2 + -0xb74) != 0" (pointer_expression "*(int *)(iVar2 + -0xb74)" * (cast_expression "(int *)(iVar2 + -0xb74)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb74)" ( (binary_expression "iVar2 + -0xb74" identifier + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n    iVar4 = (**(code **)(iVar2 + -0xb24))(1);\n    *(int *)(iVar2 + -0xa80) = iVar4;\n    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }\n  }" { (expression_statement "iVar4 = (**(code **)(iVar2 + -0xb24))(1);" (assignment_expression "iVar4 = (**(code **)(iVar2 + -0xb24))(1)" identifier = (call_expression "(**(code **)(iVar2 + -0xb24))(1)" (parenthesized_expression "(**(code **)(iVar2 + -0xb24))" ( (pointer_expression "**(code **)(iVar2 + -0xb24)" * (pointer_expression "*(code **)(iVar2 + -0xb24)" * (cast_expression "(code **)(iVar2 + -0xb24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb24)" ( (binary_expression "iVar2 + -0xb24" identifier + number_literal) ))))) )) (argument_list "(1)" ( number_literal )))) ;) (expression_statement "*(int *)(iVar2 + -0xa80) = iVar4;" (assignment_expression "*(int *)(iVar2 + -0xa80) = iVar4" (pointer_expression "*(int *)(iVar2 + -0xa80)" * (cast_expression "(int *)(iVar2 + -0xa80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) = identifier) ;) (if_statement "if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }" if (parenthesized_expression "((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0))" ( (binary_expression "(*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)" (parenthesized_expression "(*(int *)(iVar2 + -0xb74) != 0)" ( (binary_expression "*(int *)(iVar2 + -0xb74) != 0" (pointer_expression "*(int *)(iVar2 + -0xb74)" * (cast_expression "(int *)(iVar2 + -0xb74)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb74)" ( (binary_expression "iVar2 + -0xb74" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) ))) )) (compound_statement "{\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }" { (if_statement "if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }" { (expression_statement "(**(code **)(iVar2 + -0xb14))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb14))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" ( (pointer_expression "**(code **)(iVar2 + -0xb14)" * (pointer_expression "*(code **)(iVar2 + -0xb14)" * (cast_expression "(code **)(iVar2 + -0xb14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb14)" ( (binary_expression "iVar2 + -0xb14" identifier + number_literal) ))))) )) (argument_list "(iVar12)" ( identifier ))) ;) })) (return_statement "return 7;" return number_literal ;) })) })) (expression_statement "*(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1;" (assignment_expression "*(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1" (pointer_expression "*(int *)(iVar2 + -0xa84)" * (cast_expression "(int *)(iVar2 + -0xa84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa84)" ( (binary_expression "iVar2 + -0xa84" identifier + number_literal) )))) = (binary_expression "*(int *)(iVar2 + -0xa84) + 1" (pointer_expression "*(int *)(iVar2 + -0xa84)" * (cast_expression "(int *)(iVar2 + -0xa84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa84)" ( (binary_expression "iVar2 + -0xa84" identifier + number_literal) )))) + number_literal)) ;) (if_statement "if (iVar12 != 0) {\n    (**(code **)(iVar2 + -0xb14))(iVar12);\n  }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n    (**(code **)(iVar2 + -0xb14))(iVar12);\n  }" { (expression_statement "(**(code **)(iVar2 + -0xb14))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb14))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" ( (pointer_expression "**(code **)(iVar2 + -0xb14)" * (pointer_expression "*(code **)(iVar2 + -0xb14)" * (cast_expression "(code **)(iVar2 + -0xb14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb14)" ( (binary_expression "iVar2 + -0xb14" identifier + number_literal) ))))) )) (argument_list "(iVar12)" ( identifier ))) ;) })) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;) (if_statement "if (*(int *)(iVar2 + -0xa80) == 0) {\n    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;\nLAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }\n  }\n  else {\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }" if (parenthesized_expression "(*(int *)(iVar2 + -0xa80) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xa80) == 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" * (cast_expression "(int *)(iVar2 + -0xa80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;\nLAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }\n  }" { (if_statement "if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;" if (parenthesized_expression "(*(int *)(iVar2 + -0xa98) != 0)" ( (binary_expression "*(int *)(iVar2 + -0xa98) != 0" (pointer_expression "*(int *)(iVar2 + -0xa98)" * (cast_expression "(int *)(iVar2 + -0xa98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa98)" ( (binary_expression "iVar2 + -0xa98" identifier + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_00072e7c;" goto statement_identifier ;)) (labeled_statement "LAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);" statement_identifier : (expression_statement "iVar8 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar8 = *(int *)(puVar13 + 0x11dc10)" identifier = (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) ))))) ;)) (if_statement "if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }" if (parenthesized_expression "(*(int *)(iVar2 + -0xa94) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xa94) == 0" (pointer_expression "*(int *)(iVar2 + -0xa94)" * (cast_expression "(int *)(iVar2 + -0xa94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa94)" ( (binary_expression "iVar2 + -0xa94" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }" { (expression_statement "pcVar14 = *(code **)(puVar13 + 0x11e020);" (assignment_expression "pcVar14 = *(code **)(puVar13 + 0x11e020)" identifier = (pointer_expression "*(code **)(puVar13 + 0x11e020)" * (cast_expression "(code **)(puVar13 + 0x11e020)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x11e020)" ( (binary_expression "puVar13 + 0x11e020" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" * (cast_expression "(undefined4 *)(iVar2 + -0xa94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa94)" ( (binary_expression "iVar2 + -0xa94" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar14)(iVar8 + 0x1404,0,0x5c);" (call_expression "(*pcVar14)(iVar8 + 0x1404,0,0x5c)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(iVar8 + 0x1404,0,0x5c)" ( (binary_expression "iVar8 + 0x1404" identifier + number_literal) , number_literal , number_literal ))) ;) (expression_statement "pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);" (assignment_expression "pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30)" identifier = (cast_expression "(code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar13 + 0x11de70) + -0x5d30)" ( (binary_expression "*(int *)(puVar13 + 0x11de70) + -0x5d30" (pointer_expression "*(int *)(puVar13 + 0x11de70)" * (cast_expression "(int *)(puVar13 + 0x11de70)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11de70)" ( (binary_expression "puVar13 + 0x11de70" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);" (call_expression "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3)" ( (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x5f8" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) (expression_statement "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);" (call_expression "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf)" ( (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x850" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) (expression_statement "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);" (call_expression "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(puVar13 + 0x11dc10) + -0x990,8)" ( (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x990" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) (expression_statement "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);" (call_expression "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e)" ( (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x580" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) (if_statement "if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }" if (parenthesized_expression "(*(int *)(iVar2 + -0xa88) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xa88) == 0" (pointer_expression "*(int *)(iVar2 + -0xa88)" * (cast_expression "(int *)(iVar2 + -0xa88)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa88)" ( (binary_expression "iVar2 + -0xa88" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }" { (expression_statement "pcVar14 = *(code **)(iVar2 + -0xb00);" (assignment_expression "pcVar14 = *(code **)(iVar2 + -0xb00)" identifier = (pointer_expression "*(code **)(iVar2 + -0xb00)" * (cast_expression "(code **)(iVar2 + -0xb00)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb00)" ( (binary_expression "iVar2 + -0xb00" identifier + number_literal) ))))) ;) (if_statement "if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }" if (parenthesized_expression "(pcVar14 == (code *)0x0)" ( (binary_expression "pcVar14 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }" { (expression_statement "sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);" (call_expression "sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210)" identifier (argument_list "(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210)" ( number_literal , (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x2210" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar14 = *(code **)(iVar2 + -0xb00);" (assignment_expression "pcVar14 = *(code **)(iVar2 + -0xb00)" identifier = (pointer_expression "*(code **)(iVar2 + -0xb00)" * (cast_expression "(code **)(iVar2 + -0xb00)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb00)" ( (binary_expression "iVar2 + -0xb00" identifier + number_literal) ))))) ;) })) (expression_statement "iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));" (assignment_expression "iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04))" identifier = (call_expression "(*pcVar14)(*(undefined4 *)(iVar2 + -0xb04))" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(undefined4 *)(iVar2 + -0xb04))" ( (pointer_expression "*(undefined4 *)(iVar2 + -0xb04)" * (cast_expression "(undefined4 *)(iVar2 + -0xb04)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb04)" ( (binary_expression "iVar2 + -0xb04" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }" { (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" * (cast_expression "(undefined4 *)(iVar2 + -0xa94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa94)" ( (binary_expression "iVar2 + -0xa94" identifier + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_00072e64;" goto statement_identifier ;) })) })) (expression_statement "*(undefined4 *)(iVar2 + -0xa88) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa88) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa88)" * (cast_expression "(undefined4 *)(iVar2 + -0xa88)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa88)" ( (binary_expression "iVar2 + -0xa88" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar4 = sqlite3_initialize();" (assignment_expression "iVar4 = sqlite3_initialize()" identifier = (call_expression "sqlite3_initialize()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }" if (parenthesized_expression "((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0))" ( (binary_expression "(iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)" (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) && (parenthesized_expression "(iVar4 = FUN_00069c84(10), iVar4 != 0)" ( (comma_expression "iVar4 = FUN_00069c84(10), iVar4 != 0" (assignment_expression "iVar4 = FUN_00069c84(10)" identifier = (call_expression "FUN_00069c84(10)" identifier (argument_list "(10)" ( number_literal )))) , (binary_expression "iVar4 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }" { (expression_statement "(**(code **)(puVar13 + 0x11dc34))(iVar4);" (call_expression "(**(code **)(puVar13 + 0x11dc34))(iVar4)" (parenthesized_expression "(**(code **)(puVar13 + 0x11dc34))" ( (pointer_expression "**(code **)(puVar13 + 0x11dc34)" * (pointer_expression "*(code **)(puVar13 + 0x11dc34)" * (cast_expression "(code **)(puVar13 + 0x11dc34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x11dc34)" ( (binary_expression "puVar13 + 0x11dc34" identifier + number_literal) ))))) )) (argument_list "(iVar4)" ( identifier ))) ;) (expression_statement "iVar4 = sqlite3_os_init();" (assignment_expression "iVar4 = sqlite3_os_init()" identifier = (call_expression "sqlite3_os_init()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }" { (expression_statement "iVar4 = sqlite3_vfs_find(0);" (assignment_expression "iVar4 = sqlite3_vfs_find(0)" identifier = (call_expression "sqlite3_vfs_find(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar6 = *(uint *)(iVar4 + 4);" (assignment_expression "uVar6 = *(uint *)(iVar4 + 4)" identifier = (pointer_expression "*(uint *)(iVar4 + 4)" * (cast_expression "(uint *)(iVar4 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 4)" ( (binary_expression "iVar4 + 4" identifier + number_literal) ))))) ;) (expression_statement "iVar8 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar8 = *(int *)(puVar13 + 0x11dc10)" identifier = (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) ))))) ;) (if_statement "if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }" if (parenthesized_expression "(uVar6 < 0x30)" ( (binary_expression "uVar6 < 0x30" identifier < number_literal) )) (compound_statement "{\n            uVar6 = 0x30;\n          }" { (expression_statement "uVar6 = 0x30;" (assignment_expression "uVar6 = 0x30" identifier = number_literal) ;) })) (expression_statement "*(int *)(iVar8 + 0x77c) = iVar4;" (assignment_expression "*(int *)(iVar8 + 0x77c) = iVar4" (pointer_expression "*(int *)(iVar8 + 0x77c)" * (cast_expression "(int *)(iVar8 + 0x77c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x77c)" ( (binary_expression "iVar8 + 0x77c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar8 + 0x76c) = uVar6;" (assignment_expression "*(uint *)(iVar8 + 0x76c) = uVar6" (pointer_expression "*(uint *)(iVar8 + 0x76c)" * (cast_expression "(uint *)(iVar8 + 0x76c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x76c)" ( (binary_expression "iVar8 + 0x76c" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar4 = sqlite3_initialize();" (assignment_expression "iVar4 = sqlite3_initialize()" identifier = (call_expression "sqlite3_initialize()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }" if (parenthesized_expression "((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0))" ( (binary_expression "(iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)" (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) && (parenthesized_expression "(iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)" ( (comma_expression "iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0" (assignment_expression "iVar4 = FUN_00069ba0(iVar8 + 0x768,0)" identifier = (call_expression "FUN_00069ba0(iVar8 + 0x768,0)" identifier (argument_list "(iVar8 + 0x768,0)" ( (binary_expression "iVar8 + 0x768" identifier + number_literal) , number_literal )))) , (binary_expression "iVar4 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }" { (expression_statement "iVar8 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar8 = *(int *)(puVar13 + 0x11dc10)" identifier = (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }" if (parenthesized_expression "(*(int *)(iVar8 + 0x1148) != 0)" ( (binary_expression "*(int *)(iVar8 + 0x1148) != 0" (pointer_expression "*(int *)(iVar8 + 0x1148)" * (cast_expression "(int *)(iVar8 + 0x1148)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1148)" ( (binary_expression "iVar8 + 0x1148" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }" { (expression_statement "piVar10 = *(int **)(iVar2 + -0xab0);" (assignment_expression "piVar10 = *(int **)(iVar2 + -0xab0)" identifier = (pointer_expression "*(int **)(iVar2 + -0xab0)" * (cast_expression "(int **)(iVar2 + -0xab0)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xab0)" ( (binary_expression "iVar2 + -0xab0" identifier + number_literal) ))))) ;) (if_statement "if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }" if (parenthesized_expression "((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0))" ( (binary_expression "(piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)" (parenthesized_expression "(piVar10 == (int *)0x0)" ( (binary_expression "piVar10 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)" ( (comma_expression "iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0" (assignment_expression "iVar11 = *(int *)(iVar2 + -0xaa8)" identifier = (pointer_expression "*(int *)(iVar2 + -0xaa8)" * (cast_expression "(int *)(iVar2 + -0xaa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xaa8)" ( (binary_expression "iVar2 + -0xaa8" identifier + number_literal) ))))) , (binary_expression "iVar11 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }" { (expression_statement "*(undefined4 *)(iVar8 + 0x1154) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1154) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1154)" * (cast_expression "(undefined4 *)(iVar8 + 0x1154)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1154)" ( (binary_expression "iVar8 + 0x1154" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1170) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1170) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1170)" * (cast_expression "(undefined4 *)(iVar8 + 0x1170)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1170)" ( (binary_expression "iVar8 + 0x1170" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1158) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1158) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1158)" * (cast_expression "(undefined4 *)(iVar8 + 0x1158)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1158)" ( (binary_expression "iVar8 + 0x1158" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x115c) = 1;" (assignment_expression "*(undefined4 *)(iVar8 + 0x115c) = 1" (pointer_expression "*(undefined4 *)(iVar8 + 0x115c)" * (cast_expression "(undefined4 *)(iVar8 + 0x115c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x115c)" ( (binary_expression "iVar8 + 0x115c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int **)(iVar8 + 0x1160) = piVar10;" (assignment_expression "*(int **)(iVar8 + 0x1160) = piVar10" (pointer_expression "*(int **)(iVar8 + 0x1160)" * (cast_expression "(int **)(iVar8 + 0x1160)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x1160)" ( (binary_expression "iVar8 + 0x1160" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x116c) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x116c) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x116c)" * (cast_expression "(undefined4 *)(iVar8 + 0x116c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x116c)" ( (binary_expression "iVar8 + 0x116c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1174) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1174) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1174)" * (cast_expression "(undefined4 *)(iVar8 + 0x1174)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1174)" ( (binary_expression "iVar8 + 0x1174" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int **)(iVar8 + 0x1164) = piVar10;" (assignment_expression "*(int **)(iVar8 + 0x1164) = piVar10" (pointer_expression "*(int **)(iVar8 + 0x1164)" * (cast_expression "(int **)(iVar8 + 0x1164)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x1164)" ( (binary_expression "iVar8 + 0x1164" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }" else (compound_statement "{\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }" { (expression_statement "uVar6 = *(uint *)(iVar2 + -0xaac);" (assignment_expression "uVar6 = *(uint *)(iVar2 + -0xaac)" identifier = (pointer_expression "*(uint *)(iVar2 + -0xaac)" * (cast_expression "(uint *)(iVar2 + -0xaac)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xaac)" ( (binary_expression "iVar2 + -0xaac" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(iVar8 + 0x1170) = iVar11;" (assignment_expression "*(int *)(iVar8 + 0x1170) = iVar11" (pointer_expression "*(int *)(iVar8 + 0x1170)" * (cast_expression "(int *)(iVar8 + 0x1170)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1170)" ( (binary_expression "iVar8 + 0x1170" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar8 + 0x1158) = iVar11;" (assignment_expression "*(int *)(iVar8 + 0x1158) = iVar11" (pointer_expression "*(int *)(iVar8 + 0x1158)" * (cast_expression "(int *)(iVar8 + 0x1158)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1158)" ( (binary_expression "iVar8 + 0x1158" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar7 = iVar11 + -1;" (assignment_expression "iVar7 = iVar11 + -1" identifier = (binary_expression "iVar11 + -1" identifier + number_literal)) ;) (expression_statement "uVar6 = uVar6 & 0xfffffff8;" (assignment_expression "uVar6 = uVar6 & 0xfffffff8" identifier = (binary_expression "uVar6 & 0xfffffff8" identifier & number_literal)) ;) (expression_statement "*(uint *)(iVar8 + 0x1154) = uVar6;" (assignment_expression "*(uint *)(iVar8 + 0x1154) = uVar6" (pointer_expression "*(uint *)(iVar8 + 0x1154)" * (cast_expression "(uint *)(iVar8 + 0x1154)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1154)" ( (binary_expression "iVar8 + 0x1154" identifier + number_literal) )))) = identifier) ;) (if_statement "if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }" if (parenthesized_expression "(iVar11 < 0x5b)" ( (binary_expression "iVar11 < 0x5b" identifier < number_literal) )) (compound_statement "{\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }" { (expression_statement "*(int **)(iVar8 + 0x1160) = piVar10;" (assignment_expression "*(int **)(iVar8 + 0x1160) = piVar10" (pointer_expression "*(int **)(iVar8 + 0x1160)" * (cast_expression "(int **)(iVar8 + 0x1160)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x1160)" ( (binary_expression "iVar8 + 0x1160" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1174) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1174) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1174)" * (cast_expression "(undefined4 *)(iVar8 + 0x1174)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1174)" ( (binary_expression "iVar8 + 0x1174" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;" (assignment_expression "*(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1" (pointer_expression "*(int *)(iVar8 + 0x115c)" * (cast_expression "(int *)(iVar8 + 0x115c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x115c)" ( (binary_expression "iVar8 + 0x115c" identifier + number_literal) )))) = (binary_expression "iVar11 / 10 + 1" (binary_expression "iVar11 / 10" identifier / number_literal) + number_literal)) ;) }) (else_clause "else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }" else (compound_statement "{\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }" { (expression_statement "*(int **)(iVar8 + 0x1160) = piVar10;" (assignment_expression "*(int **)(iVar8 + 0x1160) = piVar10" (pointer_expression "*(int **)(iVar8 + 0x1160)" * (cast_expression "(int **)(iVar8 + 0x1160)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x1160)" ( (binary_expression "iVar8 + 0x1160" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1174) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1174) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1174)" * (cast_expression "(undefined4 *)(iVar8 + 0x1174)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1174)" ( (binary_expression "iVar8 + 0x1174" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x115c) = 10;" (assignment_expression "*(undefined4 *)(iVar8 + 0x115c) = 10" (pointer_expression "*(undefined4 *)(iVar8 + 0x115c)" * (cast_expression "(undefined4 *)(iVar8 + 0x115c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x115c)" ( (binary_expression "iVar8 + 0x115c" identifier + number_literal) )))) = number_literal) ;) }))) (expression_statement "piVar1 = piVar10;" (assignment_expression "piVar1 = piVar10" identifier = identifier) ;) (expression_statement "piVar9 = (int *)0;" (assignment_expression "piVar9 = (int *)0" identifier = (cast_expression "(int *)0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);" do (compound_statement "{\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                }" { (expression_statement "piVar5 = piVar1;" (assignment_expression "piVar5 = piVar1" identifier = identifier) ;) (expression_statement "iVar7 = iVar7 + -1;" (assignment_expression "iVar7 = iVar7 + -1" identifier = (binary_expression "iVar7 + -1" identifier + number_literal)) ;) (expression_statement "*piVar5 = (int)piVar9;" (assignment_expression "*piVar5 = (int)piVar9" (pointer_expression "*piVar5" * identifier) = (cast_expression "(int)piVar9" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "*(int **)(iVar8 + 0x116c) = piVar5;" (assignment_expression "*(int **)(iVar8 + 0x116c) = piVar5" (pointer_expression "*(int **)(iVar8 + 0x116c)" * (cast_expression "(int **)(iVar8 + 0x116c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x116c)" ( (binary_expression "iVar8 + 0x116c" identifier + number_literal) )))) = identifier) ;) (expression_statement "piVar1 = (int *)((int)piVar5 + uVar6);" (assignment_expression "piVar1 = (int *)((int)piVar5 + uVar6)" identifier = (cast_expression "(int *)((int)piVar5 + uVar6)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar5 + uVar6)" ( (binary_expression "(int)piVar5 + uVar6" (cast_expression "(int)piVar5" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (expression_statement "piVar9 = piVar5;" (assignment_expression "piVar9 = piVar5" identifier = identifier) ;) }) while (parenthesized_expression "(iVar7 != -1)" ( (binary_expression "iVar7 != -1" identifier != number_literal) )) ;) (expression_statement "*(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);" (assignment_expression "*(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10)" (pointer_expression "*(int **)(iVar8 + 0x1164)" * (cast_expression "(int **)(iVar8 + 0x1164)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x1164)" ( (binary_expression "iVar8 + 0x1164" identifier + number_literal) )))) = (cast_expression "(int *)(iVar11 * uVar6 + (int)piVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 * uVar6 + (int)piVar10)" ( (binary_expression "iVar11 * uVar6 + (int)piVar10" (binary_expression "iVar11 * uVar6" identifier * identifier) + (cast_expression "(int)piVar10" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }))) })) (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" * (cast_expression "(undefined4 *)(iVar2 + -0xa94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa94)" ( (binary_expression "iVar2 + -0xa94" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar2 + -0xa98) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa98) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa98)" * (cast_expression "(undefined4 *)(iVar2 + -0xa98)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa98)" ( (binary_expression "iVar2 + -0xa98" identifier + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_00072e64;" goto statement_identifier ;) })) })) (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" * (cast_expression "(undefined4 *)(iVar2 + -0xa94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa94)" ( (binary_expression "iVar2 + -0xa94" identifier + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }" else (compound_statement "{\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }" { (expression_statement "iVar4 = 7;" (assignment_expression "iVar4 = 7" identifier = number_literal) ;) (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" * (cast_expression "(undefined4 *)(iVar2 + -0xa94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa94)" ( (binary_expression "iVar2 + -0xa94" identifier + number_literal) )))) = number_literal) ;) }))) })) }) (else_clause "else {\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }" else (compound_statement "{\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }" { (expression_statement "(**(code **)(iVar2 + -0xb1c))();" (call_expression "(**(code **)(iVar2 + -0xb1c))()" (parenthesized_expression "(**(code **)(iVar2 + -0xb1c))" ( (pointer_expression "**(code **)(iVar2 + -0xb1c)" * (pointer_expression "*(code **)(iVar2 + -0xb1c)" * (cast_expression "(code **)(iVar2 + -0xb1c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb1c)" ( (binary_expression "iVar2 + -0xb1c" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (if_statement "if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;" if (parenthesized_expression "(*(int *)(iVar2 + -0xa98) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xa98) == 0" (pointer_expression "*(int *)(iVar2 + -0xa98)" * (cast_expression "(int *)(iVar2 + -0xa98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa98)" ( (binary_expression "iVar2 + -0xa98" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_00072e58;" goto statement_identifier ;)) }))) (labeled_statement "LAB_00072e64:\n  if (*(int *)(iVar2 + -0xa80) != 0) {\n    (**(code **)(iVar2 + -0xb14))();\n  }" statement_identifier : (if_statement "if (*(int *)(iVar2 + -0xa80) != 0) {\n    (**(code **)(iVar2 + -0xb14))();\n  }" if (parenthesized_expression "(*(int *)(iVar2 + -0xa80) != 0)" ( (binary_expression "*(int *)(iVar2 + -0xa80) != 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" * (cast_expression "(int *)(iVar2 + -0xa80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    (**(code **)(iVar2 + -0xb14))();\n  }" { (expression_statement "(**(code **)(iVar2 + -0xb14))();" (call_expression "(**(code **)(iVar2 + -0xb14))()" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" ( (pointer_expression "**(code **)(iVar2 + -0xb14)" * (pointer_expression "*(code **)(iVar2 + -0xb14)" * (cast_expression "(code **)(iVar2 + -0xb14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb14)" ( (binary_expression "iVar2 + -0xb14" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) }))) (labeled_statement "LAB_00072e7c:\n  if (iVar12 == 0) {\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }" statement_identifier : (if_statement "if (iVar12 == 0) {\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }" if (parenthesized_expression "(iVar12 == 0)" ( (binary_expression "iVar12 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }" { (expression_statement "iVar12 = *(int *)(iVar2 + -0xa84) + -1;" (assignment_expression "iVar12 = *(int *)(iVar2 + -0xa84) + -1" identifier = (binary_expression "*(int *)(iVar2 + -0xa84) + -1" (pointer_expression "*(int *)(iVar2 + -0xa84)" * (cast_expression "(int *)(iVar2 + -0xa84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa84)" ( (binary_expression "iVar2 + -0xa84" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "*(int *)(iVar2 + -0xa84) = iVar12;" (assignment_expression "*(int *)(iVar2 + -0xa84) = iVar12" (pointer_expression "*(int *)(iVar2 + -0xa84)" * (cast_expression "(int *)(iVar2 + -0xa84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa84)" ( (binary_expression "iVar2 + -0xa84" identifier + number_literal) )))) = identifier) ;) (if_statement "if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }" if (parenthesized_expression "((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0))" ( (binary_expression "(iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)" (parenthesized_expression "(iVar12 < 1)" ( (binary_expression "iVar12 < 1" identifier < number_literal) )) && (parenthesized_expression "(*(int *)(iVar2 + -0xa80) != 0)" ( (binary_expression "*(int *)(iVar2 + -0xa80) != 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" * (cast_expression "(int *)(iVar2 + -0xa80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }" { (expression_statement "(**(code **)(iVar2 + -0xb20))();" (call_expression "(**(code **)(iVar2 + -0xb20))()" (parenthesized_expression "(**(code **)(iVar2 + -0xb20))" ( (pointer_expression "**(code **)(iVar2 + -0xb20)" * (pointer_expression "*(code **)(iVar2 + -0xb20)" * (cast_expression "(code **)(iVar2 + -0xb20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb20)" ( (binary_expression "iVar2 + -0xb20" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(iVar2 + -0xa80) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa80) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa80)" * (cast_expression "(undefined4 *)(iVar2 + -0xa80)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) = number_literal) ;) })) (return_statement "return iVar4;" return identifier ;) }))) (expression_statement "(**(code **)(iVar2 + -0xb1c))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb1c))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb1c))" ( (pointer_expression "**(code **)(iVar2 + -0xb1c)" * (pointer_expression "*(code **)(iVar2 + -0xb1c)" * (cast_expression "(code **)(iVar2 + -0xb1c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb1c)" ( (binary_expression "iVar2 + -0xb1c" identifier + number_literal) ))))) )) (argument_list "(iVar12)" ( identifier ))) ;) (expression_statement "iVar8 = *(int *)(iVar2 + -0xa84) + -1;" (assignment_expression "iVar8 = *(int *)(iVar2 + -0xa84) + -1" identifier = (binary_expression "*(int *)(iVar2 + -0xa84) + -1" (pointer_expression "*(int *)(iVar2 + -0xa84)" * (cast_expression "(int *)(iVar2 + -0xa84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa84)" ( (binary_expression "iVar2 + -0xa84" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "*(int *)(iVar2 + -0xa84) = iVar8;" (assignment_expression "*(int *)(iVar2 + -0xa84) = iVar8" (pointer_expression "*(int *)(iVar2 + -0xa84)" * (cast_expression "(int *)(iVar2 + -0xa84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa84)" ( (binary_expression "iVar2 + -0xa84" identifier + number_literal) )))) = identifier) ;) (if_statement "if ((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n    (**(code **)(iVar2 + -0xb20))();\n    *(undefined4 *)(iVar2 + -0xa80) = 0;\n  }" if (parenthesized_expression "((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0))" ( (binary_expression "(iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)" (parenthesized_expression "(iVar8 < 1)" ( (binary_expression "iVar8 < 1" identifier < number_literal) )) && (parenthesized_expression "(*(int *)(iVar2 + -0xa80) != 0)" ( (binary_expression "*(int *)(iVar2 + -0xa80) != 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" * (cast_expression "(int *)(iVar2 + -0xa80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n    (**(code **)(iVar2 + -0xb20))();\n    *(undefined4 *)(iVar2 + -0xa80) = 0;\n  }" { (expression_statement "(**(code **)(iVar2 + -0xb20))();" (call_expression "(**(code **)(iVar2 + -0xb20))()" (parenthesized_expression "(**(code **)(iVar2 + -0xb20))" ( (pointer_expression "**(code **)(iVar2 + -0xb20)" * (pointer_expression "*(code **)(iVar2 + -0xb20)" * (cast_expression "(code **)(iVar2 + -0xb20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb20)" ( (binary_expression "iVar2 + -0xb20" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(iVar2 + -0xa80) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa80) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa80)" * (cast_expression "(undefined4 *)(iVar2 + -0xa80)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) = number_literal) ;) })) (expression_statement "(**(code **)(iVar2 + -0xb14))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb14))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" ( (pointer_expression "**(code **)(iVar2 + -0xb14)" * (pointer_expression "*(code **)(iVar2 + -0xb14)" * (cast_expression "(code **)(iVar2 + -0xb14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb14)" ( (binary_expression "iVar2 + -0xb14" identifier + number_literal) ))))) )) (argument_list "(iVar12)" ( identifier ))) ;) (return_statement "return iVar4;" return identifier ;) })))
(translation_unit "int sqlite3_config(int op,...)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  va_list ap;\n  \n  puVar1 = PTR___stack_chk_guard_00190e24;\n  iVar2 = *(int *)PTR___stack_chk_guard_00190e24;\n  if (*(int *)(PTR_aBuiltinFunc_29540_1408__00190948 + -0xa98) == 0) {\n    if ((uint)op < 0x1e) {\n                    /* WARNING: Could not emulate address calculation at 0x00072918 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar3 = 1;\n  }\n  else {\n    iVar3 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }\n  if (iVar2 == *(int *)puVar1) {\n    return iVar3;\n  }\n  iVar2 = (*(code *)PTR___stack_chk_fail_00190df8)();\n  return iVar2;\n}\n\n" (function_definition "int sqlite3_config(int op,...)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  va_list ap;\n  \n  puVar1 = PTR___stack_chk_guard_00190e24;\n  iVar2 = *(int *)PTR___stack_chk_guard_00190e24;\n  if (*(int *)(PTR_aBuiltinFunc_29540_1408__00190948 + -0xa98) == 0) {\n    if ((uint)op < 0x1e) {\n                    /* WARNING: Could not emulate address calculation at 0x00072918 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar3 = 1;\n  }\n  else {\n    iVar3 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }\n  if (iVar2 == *(int *)puVar1) {\n    return iVar3;\n  }\n  iVar2 = (*(code *)PTR___stack_chk_fail_00190df8)();\n  return iVar2;\n}" primitive_type (function_declarator "sqlite3_config(int op,...)" identifier (parameter_list "(int op,...)" ( (parameter_declaration "int op" primitive_type identifier) , (variadic_parameter "..." ...) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  int iVar3;\n  va_list ap;\n  \n  puVar1 = PTR___stack_chk_guard_00190e24;\n  iVar2 = *(int *)PTR___stack_chk_guard_00190e24;\n  if (*(int *)(PTR_aBuiltinFunc_29540_1408__00190948 + -0xa98) == 0) {\n    if ((uint)op < 0x1e) {\n                    /* WARNING: Could not emulate address calculation at 0x00072918 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar3 = 1;\n  }\n  else {\n    iVar3 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }\n  if (iVar2 == *(int *)puVar1) {\n    return iVar3;\n  }\n  iVar2 = (*(code *)PTR___stack_chk_fail_00190df8)();\n  return iVar2;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "va_list ap;" type_identifier identifier ;) (expression_statement "puVar1 = PTR___stack_chk_guard_00190e24;" (assignment_expression "puVar1 = PTR___stack_chk_guard_00190e24" identifier = identifier) ;) (expression_statement "iVar2 = *(int *)PTR___stack_chk_guard_00190e24;" (assignment_expression "iVar2 = *(int *)PTR___stack_chk_guard_00190e24" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_00190e24" * (cast_expression "(int *)PTR___stack_chk_guard_00190e24" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (*(int *)(PTR_aBuiltinFunc_29540_1408__00190948 + -0xa98) == 0) {\n    if ((uint)op < 0x1e) {\n                    /* WARNING: Could not emulate address calculation at 0x00072918 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar3 = 1;\n  }\n  else {\n    iVar3 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }" if (parenthesized_expression "(*(int *)(PTR_aBuiltinFunc_29540_1408__00190948 + -0xa98) == 0)" ( (binary_expression "*(int *)(PTR_aBuiltinFunc_29540_1408__00190948 + -0xa98) == 0" (pointer_expression "*(int *)(PTR_aBuiltinFunc_29540_1408__00190948 + -0xa98)" * (cast_expression "(int *)(PTR_aBuiltinFunc_29540_1408__00190948 + -0xa98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_aBuiltinFunc_29540_1408__00190948 + -0xa98)" ( (binary_expression "PTR_aBuiltinFunc_29540_1408__00190948 + -0xa98" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if ((uint)op < 0x1e) {\n                    /* WARNING: Could not emulate address calculation at 0x00072918 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar3 = 1;\n  }" { (if_statement "if ((uint)op < 0x1e) {\n                    /* WARNING: Could not emulate address calculation at 0x00072918 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)))();\n      return iVar2;\n    }" if (parenthesized_expression "((uint)op < 0x1e)" ( (binary_expression "(uint)op < 0x1e" (cast_expression "(uint)op" ( (type_descriptor "uint" type_identifier) ) identifier) < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not emulate address calculation at 0x00072918 */\n                    /* WARNING: Treating indirect jump as call */\n      iVar2 = (*(code *)(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)))();\n      return iVar2;\n    }" { comment comment (expression_statement "iVar2 = (*(code *)(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)))();" (assignment_expression "iVar2 = (*(code *)(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)))()" identifier = (call_expression "(*(code *)(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)))()" (parenthesized_expression "(*(code *)(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)))" ( (pointer_expression "*(code *)(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc))" * (cast_expression "(code *)(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc))" ( (binary_expression "&_gp + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)" (pointer_expression "&_gp" & identifier) + (pointer_expression "*(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)" * (cast_expression "(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc)" ( (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4 + 0x34dc" (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                        op * 4" identifier + (binary_expression "op * 4" identifier * number_literal)) + number_literal) ))))) )))) )) (argument_list "()" ( )))) ;) (return_statement "return iVar2;" return identifier ;) })) (expression_statement "iVar3 = 1;" (assignment_expression "iVar3 = 1" identifier = number_literal) ;) }) (else_clause "else {\n    iVar3 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }" else (compound_statement "{\n    iVar3 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }" { (expression_statement "iVar3 = 0x15;" (assignment_expression "iVar3 = 0x15" identifier = number_literal) ;) (expression_statement "sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);" (call_expression "sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c)" identifier (argument_list "(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c)" ( number_literal , (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378" identifier + number_literal) , (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380" identifier + number_literal) , number_literal , (binary_expression "PTR_LAB_00190958 + 0x625c" identifier + number_literal) ))) ;) }))) (if_statement "if (iVar2 == *(int *)puVar1) {\n    return iVar3;\n  }" if (parenthesized_expression "(iVar2 == *(int *)puVar1)" ( (binary_expression "iVar2 == *(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 "iVar2 = (*(code *)PTR___stack_chk_fail_00190df8)();" (assignment_expression "iVar2 = (*(code *)PTR___stack_chk_fail_00190df8)()" identifier = (call_expression "(*(code *)PTR___stack_chk_fail_00190df8)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_00190df8)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_00190df8" * (cast_expression "(code *)PTR___stack_chk_fail_00190df8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (return_statement "return iVar2;" return identifier ;) })))
(translation_unit "int sqlite3_config(uint param_1)\n\n{\n  int *piVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  int *piVar5;\n  uint uVar6;\n  int iVar7;\n  int iVar8;\n  int *piVar9;\n  int *piVar10;\n  int iVar11;\n  int iVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  \n  puVar13 = PTR___stack_chk_guard_00190e24;\n  iVar2 = *(int *)PTR___stack_chk_guard_00190e24;\n  if (*(int *)(PTR_DAT_00190948 + -0xa98) == 0) {\n    if (param_1 < 0x1e) {\n                    \n                    \n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar12 = 1;\n  }\n  else {\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }\n  if (iVar2 == *(int *)puVar13) {\n    return iVar12;\n  }\n  puVar13 = PTR___stack_chk_fail_00190df8;\n  (*(code *)PTR___stack_chk_fail_00190df8)();\n  iVar2 = *(int *)(puVar13 + 0x11dc10);\n  if (*(int *)(iVar2 + -0xa98) != 0) {\n    return 0;\n  }\n  iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))();\n  if (iVar12 != 0) {\n    return iVar12;\n  }\n  if (*(int *)(iVar2 + -0xb74) == 0) {\n    iVar12 = 0;\n  }\n  else {\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa90) = 1;\n  if (*(int *)(iVar2 + -0xa8c) == 0) {\n    if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    iVar4 = *(int *)(iVar2 + -0xb74);\n    *(undefined4 *)(iVar8 + 0x1390) = 0;\n    *(undefined4 *)(iVar8 + 0x1394) = 0;\n    *(undefined4 *)(iVar8 + 0x1398) = 0;\n    *(undefined4 *)(iVar8 + 0x139c) = 0;\n    *(undefined4 *)(iVar8 + 0x13a0) = 0;\n    *(undefined4 *)(iVar8 + 0x13a4) = 0;\n    if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }\n    iVar4 = *(int *)(iVar2 + -0xab0);\n    *(undefined4 *)(iVar8 + 0x1390) = uVar3;\n    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }\n    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));\n    if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa8c) = 1;\n  if ((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)) {\n    iVar4 = (**(code **)(iVar2 + -0xb24))(1);\n    *(int *)(iVar2 + -0xa80) = iVar4;\n    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }\n  }\n  *(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1;\n  if (iVar12 != 0) {\n    (**(code **)(iVar2 + -0xb14))(iVar12);\n  }\n  iVar4 = 0;\n  if (*(int *)(iVar2 + -0xa80) == 0) {\n    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;\nLAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }\n  }\n  else {\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }\nLAB_00072e64:\n  if (*(int *)(iVar2 + -0xa80) != 0) {\n    (**(code **)(iVar2 + -0xb14))();\n  }\nLAB_00072e7c:\n  if (iVar12 == 0) {\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }\n  (**(code **)(iVar2 + -0xb1c))(iVar12);\n  iVar8 = *(int *)(iVar2 + -0xa84) + -1;\n  *(int *)(iVar2 + -0xa84) = iVar8;\n  if ((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n    (**(code **)(iVar2 + -0xb20))();\n    *(undefined4 *)(iVar2 + -0xa80) = 0;\n  }\n  (**(code **)(iVar2 + -0xb14))(iVar12);\n  return iVar4;\n}\n\n" (function_definition "int sqlite3_config(uint param_1)\n\n{\n  int *piVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  int *piVar5;\n  uint uVar6;\n  int iVar7;\n  int iVar8;\n  int *piVar9;\n  int *piVar10;\n  int iVar11;\n  int iVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  \n  puVar13 = PTR___stack_chk_guard_00190e24;\n  iVar2 = *(int *)PTR___stack_chk_guard_00190e24;\n  if (*(int *)(PTR_DAT_00190948 + -0xa98) == 0) {\n    if (param_1 < 0x1e) {\n                    \n                    \n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar12 = 1;\n  }\n  else {\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }\n  if (iVar2 == *(int *)puVar13) {\n    return iVar12;\n  }\n  puVar13 = PTR___stack_chk_fail_00190df8;\n  (*(code *)PTR___stack_chk_fail_00190df8)();\n  iVar2 = *(int *)(puVar13 + 0x11dc10);\n  if (*(int *)(iVar2 + -0xa98) != 0) {\n    return 0;\n  }\n  iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))();\n  if (iVar12 != 0) {\n    return iVar12;\n  }\n  if (*(int *)(iVar2 + -0xb74) == 0) {\n    iVar12 = 0;\n  }\n  else {\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa90) = 1;\n  if (*(int *)(iVar2 + -0xa8c) == 0) {\n    if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    iVar4 = *(int *)(iVar2 + -0xb74);\n    *(undefined4 *)(iVar8 + 0x1390) = 0;\n    *(undefined4 *)(iVar8 + 0x1394) = 0;\n    *(undefined4 *)(iVar8 + 0x1398) = 0;\n    *(undefined4 *)(iVar8 + 0x139c) = 0;\n    *(undefined4 *)(iVar8 + 0x13a0) = 0;\n    *(undefined4 *)(iVar8 + 0x13a4) = 0;\n    if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }\n    iVar4 = *(int *)(iVar2 + -0xab0);\n    *(undefined4 *)(iVar8 + 0x1390) = uVar3;\n    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }\n    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));\n    if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa8c) = 1;\n  if ((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)) {\n    iVar4 = (**(code **)(iVar2 + -0xb24))(1);\n    *(int *)(iVar2 + -0xa80) = iVar4;\n    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }\n  }\n  *(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1;\n  if (iVar12 != 0) {\n    (**(code **)(iVar2 + -0xb14))(iVar12);\n  }\n  iVar4 = 0;\n  if (*(int *)(iVar2 + -0xa80) == 0) {\n    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;\nLAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }\n  }\n  else {\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }\nLAB_00072e64:\n  if (*(int *)(iVar2 + -0xa80) != 0) {\n    (**(code **)(iVar2 + -0xb14))();\n  }\nLAB_00072e7c:\n  if (iVar12 == 0) {\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }\n  (**(code **)(iVar2 + -0xb1c))(iVar12);\n  iVar8 = *(int *)(iVar2 + -0xa84) + -1;\n  *(int *)(iVar2 + -0xa84) = iVar8;\n  if ((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n    (**(code **)(iVar2 + -0xb20))();\n    *(undefined4 *)(iVar2 + -0xa80) = 0;\n  }\n  (**(code **)(iVar2 + -0xb14))(iVar12);\n  return iVar4;\n}" primitive_type (function_declarator "sqlite3_config(uint param_1)" identifier (parameter_list "(uint param_1)" ( (parameter_declaration "uint param_1" type_identifier identifier) ))) (compound_statement "{\n  int *piVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  int *piVar5;\n  uint uVar6;\n  int iVar7;\n  int iVar8;\n  int *piVar9;\n  int *piVar10;\n  int iVar11;\n  int iVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  \n  puVar13 = PTR___stack_chk_guard_00190e24;\n  iVar2 = *(int *)PTR___stack_chk_guard_00190e24;\n  if (*(int *)(PTR_DAT_00190948 + -0xa98) == 0) {\n    if (param_1 < 0x1e) {\n                    \n                    \n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar12 = 1;\n  }\n  else {\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }\n  if (iVar2 == *(int *)puVar13) {\n    return iVar12;\n  }\n  puVar13 = PTR___stack_chk_fail_00190df8;\n  (*(code *)PTR___stack_chk_fail_00190df8)();\n  iVar2 = *(int *)(puVar13 + 0x11dc10);\n  if (*(int *)(iVar2 + -0xa98) != 0) {\n    return 0;\n  }\n  iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))();\n  if (iVar12 != 0) {\n    return iVar12;\n  }\n  if (*(int *)(iVar2 + -0xb74) == 0) {\n    iVar12 = 0;\n  }\n  else {\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa90) = 1;\n  if (*(int *)(iVar2 + -0xa8c) == 0) {\n    if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    iVar4 = *(int *)(iVar2 + -0xb74);\n    *(undefined4 *)(iVar8 + 0x1390) = 0;\n    *(undefined4 *)(iVar8 + 0x1394) = 0;\n    *(undefined4 *)(iVar8 + 0x1398) = 0;\n    *(undefined4 *)(iVar8 + 0x139c) = 0;\n    *(undefined4 *)(iVar8 + 0x13a0) = 0;\n    *(undefined4 *)(iVar8 + 0x13a4) = 0;\n    if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }\n    iVar4 = *(int *)(iVar2 + -0xab0);\n    *(undefined4 *)(iVar8 + 0x1390) = uVar3;\n    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }\n    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));\n    if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa8c) = 1;\n  if ((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)) {\n    iVar4 = (**(code **)(iVar2 + -0xb24))(1);\n    *(int *)(iVar2 + -0xa80) = iVar4;\n    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }\n  }\n  *(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1;\n  if (iVar12 != 0) {\n    (**(code **)(iVar2 + -0xb14))(iVar12);\n  }\n  iVar4 = 0;\n  if (*(int *)(iVar2 + -0xa80) == 0) {\n    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;\nLAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }\n  }\n  else {\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }\nLAB_00072e64:\n  if (*(int *)(iVar2 + -0xa80) != 0) {\n    (**(code **)(iVar2 + -0xb14))();\n  }\nLAB_00072e7c:\n  if (iVar12 == 0) {\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }\n  (**(code **)(iVar2 + -0xb1c))(iVar12);\n  iVar8 = *(int *)(iVar2 + -0xa84) + -1;\n  *(int *)(iVar2 + -0xa84) = iVar8;\n  if ((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n    (**(code **)(iVar2 + -0xb20))();\n    *(undefined4 *)(iVar2 + -0xa80) = 0;\n  }\n  (**(code **)(iVar2 + -0xb14))(iVar12);\n  return iVar4;\n}" { (declaration "int *piVar1;" primitive_type (pointer_declarator "*piVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "int *piVar9;" primitive_type (pointer_declarator "*piVar9" * identifier) ;) (declaration "int *piVar10;" primitive_type (pointer_declarator "*piVar10" * identifier) ;) (declaration "int iVar11;" primitive_type identifier ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "undefined *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "code *pcVar14;" type_identifier (pointer_declarator "*pcVar14" * identifier) ;) (expression_statement "puVar13 = PTR___stack_chk_guard_00190e24;" (assignment_expression "puVar13 = PTR___stack_chk_guard_00190e24" identifier = identifier) ;) (expression_statement "iVar2 = *(int *)PTR___stack_chk_guard_00190e24;" (assignment_expression "iVar2 = *(int *)PTR___stack_chk_guard_00190e24" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_00190e24" * (cast_expression "(int *)PTR___stack_chk_guard_00190e24" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (*(int *)(PTR_DAT_00190948 + -0xa98) == 0) {\n    if (param_1 < 0x1e) {\n                    \n                    \n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar12 = 1;\n  }\n  else {\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }" if (parenthesized_expression "(*(int *)(PTR_DAT_00190948 + -0xa98) == 0)" ( (binary_expression "*(int *)(PTR_DAT_00190948 + -0xa98) == 0" (pointer_expression "*(int *)(PTR_DAT_00190948 + -0xa98)" * (cast_expression "(int *)(PTR_DAT_00190948 + -0xa98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_00190948 + -0xa98)" ( (binary_expression "PTR_DAT_00190948 + -0xa98" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (param_1 < 0x1e) {\n                    \n                    \n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar12 = 1;\n  }" { (if_statement "if (param_1 < 0x1e) {\n                    \n                    \n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }" if (parenthesized_expression "(param_1 < 0x1e)" ( (binary_expression "param_1 < 0x1e" identifier < number_literal) )) (compound_statement "{\n                    \n                    \n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }" { (expression_statement "iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();" (assignment_expression "iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))()" identifier = (call_expression "(*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))()" (parenthesized_expression "(*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))" ( (pointer_expression "*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc))" * (cast_expression "(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc))" ( (binary_expression "&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)" (pointer_expression "&_gp_1" & identifier) + (pointer_expression "*(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)" * (cast_expression "(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)" ( (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc" (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4" identifier + (binary_expression "param_1 * 4" identifier * number_literal)) + number_literal) ))))) )))) )) (argument_list "()" ( )))) ;) (return_statement "return iVar2;" return identifier ;) })) (expression_statement "iVar12 = 1;" (assignment_expression "iVar12 = 1" identifier = number_literal) ;) }) (else_clause "else {\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }" else (compound_statement "{\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }" { (expression_statement "iVar12 = 0x15;" (assignment_expression "iVar12 = 0x15" identifier = number_literal) ;) (expression_statement "sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);" (call_expression "sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c)" identifier (argument_list "(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c)" ( number_literal , (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378" identifier + number_literal) , (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380" identifier + number_literal) , number_literal , (binary_expression "PTR_LAB_00190958 + 0x625c" identifier + number_literal) ))) ;) }))) (if_statement "if (iVar2 == *(int *)puVar13) {\n    return iVar12;\n  }" if (parenthesized_expression "(iVar2 == *(int *)puVar13)" ( (binary_expression "iVar2 == *(int *)puVar13" identifier == (pointer_expression "*(int *)puVar13" * (cast_expression "(int *)puVar13" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return iVar12;\n  }" { (return_statement "return iVar12;" return identifier ;) })) (expression_statement "puVar13 = PTR___stack_chk_fail_00190df8;" (assignment_expression "puVar13 = PTR___stack_chk_fail_00190df8" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_00190df8)();" (call_expression "(*(code *)PTR___stack_chk_fail_00190df8)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_00190df8)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_00190df8" * (cast_expression "(code *)PTR___stack_chk_fail_00190df8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "iVar2 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar2 = *(int *)(puVar13 + 0x11dc10)" identifier = (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(iVar2 + -0xa98) != 0) {\n    return 0;\n  }" if (parenthesized_expression "(*(int *)(iVar2 + -0xa98) != 0)" ( (binary_expression "*(int *)(iVar2 + -0xa98) != 0" (pointer_expression "*(int *)(iVar2 + -0xa98)" * (cast_expression "(int *)(iVar2 + -0xa98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa98)" ( (binary_expression "iVar2 + -0xa98" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))();" (assignment_expression "iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))()" identifier = (call_expression "(*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))()" (parenthesized_expression "(*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))" ( (pointer_expression "*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88)" * (cast_expression "(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar13 + 0x11de70) + -0x5e88)" ( (binary_expression "*(int *)(puVar13 + 0x11de70) + -0x5e88" (pointer_expression "*(int *)(puVar13 + 0x11de70)" * (cast_expression "(int *)(puVar13 + 0x11de70)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11de70)" ( (binary_expression "puVar13 + 0x11de70" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar12 != 0) {\n    return iVar12;\n  }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n    return iVar12;\n  }" { (return_statement "return iVar12;" return identifier ;) })) (if_statement "if (*(int *)(iVar2 + -0xb74) == 0) {\n    iVar12 = 0;\n  }\n  else {\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }" if (parenthesized_expression "(*(int *)(iVar2 + -0xb74) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xb74) == 0" (pointer_expression "*(int *)(iVar2 + -0xb74)" * (cast_expression "(int *)(iVar2 + -0xb74)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb74)" ( (binary_expression "iVar2 + -0xb74" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    iVar12 = 0;\n  }" { (expression_statement "iVar12 = 0;" (assignment_expression "iVar12 = 0" identifier = number_literal) ;) }) (else_clause "else {\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }" else (compound_statement "{\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }" { (expression_statement "iVar12 = (**(code **)(iVar2 + -0xb24))(2);" (assignment_expression "iVar12 = (**(code **)(iVar2 + -0xb24))(2)" identifier = (call_expression "(**(code **)(iVar2 + -0xb24))(2)" (parenthesized_expression "(**(code **)(iVar2 + -0xb24))" ( (pointer_expression "**(code **)(iVar2 + -0xb24)" * (pointer_expression "*(code **)(iVar2 + -0xb24)" * (cast_expression "(code **)(iVar2 + -0xb24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb24)" ( (binary_expression "iVar2 + -0xb24" identifier + number_literal) ))))) )) (argument_list "(2)" ( number_literal )))) ;) (if_statement "if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }" { (expression_statement "(**(code **)(iVar2 + -0xb1c))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb1c))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb1c))" ( (pointer_expression "**(code **)(iVar2 + -0xb1c)" * (pointer_expression "*(code **)(iVar2 + -0xb1c)" * (cast_expression "(code **)(iVar2 + -0xb1c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb1c)" ( (binary_expression "iVar2 + -0xb1c" identifier + number_literal) ))))) )) (argument_list "(iVar12)" ( identifier ))) ;) })) }))) (expression_statement "*(undefined4 *)(iVar2 + -0xa90) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa90) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa90)" * (cast_expression "(undefined4 *)(iVar2 + -0xa90)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa90)" ( (binary_expression "iVar2 + -0xa90" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (*(int *)(iVar2 + -0xa8c) == 0) {\n    if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    iVar4 = *(int *)(iVar2 + -0xb74);\n    *(undefined4 *)(iVar8 + 0x1390) = 0;\n    *(undefined4 *)(iVar8 + 0x1394) = 0;\n    *(undefined4 *)(iVar8 + 0x1398) = 0;\n    *(undefined4 *)(iVar8 + 0x139c) = 0;\n    *(undefined4 *)(iVar8 + 0x13a0) = 0;\n    *(undefined4 *)(iVar8 + 0x13a4) = 0;\n    if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }\n    iVar4 = *(int *)(iVar2 + -0xab0);\n    *(undefined4 *)(iVar8 + 0x1390) = uVar3;\n    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }\n    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));\n    if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }\n  }" if (parenthesized_expression "(*(int *)(iVar2 + -0xa8c) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xa8c) == 0" (pointer_expression "*(int *)(iVar2 + -0xa8c)" * (cast_expression "(int *)(iVar2 + -0xa8c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa8c)" ( (binary_expression "iVar2 + -0xa8c" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    iVar4 = *(int *)(iVar2 + -0xb74);\n    *(undefined4 *)(iVar8 + 0x1390) = 0;\n    *(undefined4 *)(iVar8 + 0x1394) = 0;\n    *(undefined4 *)(iVar8 + 0x1398) = 0;\n    *(undefined4 *)(iVar8 + 0x139c) = 0;\n    *(undefined4 *)(iVar8 + 0x13a0) = 0;\n    *(undefined4 *)(iVar8 + 0x13a4) = 0;\n    if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }\n    iVar4 = *(int *)(iVar2 + -0xab0);\n    *(undefined4 *)(iVar8 + 0x1390) = uVar3;\n    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }\n    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));\n    if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }\n  }" { (if_statement "if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }" if (parenthesized_expression "(*(int *)(iVar2 + -0xb4c) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xb4c) == 0" (pointer_expression "*(int *)(iVar2 + -0xb4c)" * (cast_expression "(int *)(iVar2 + -0xb4c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb4c)" ( (binary_expression "iVar2 + -0xb4c" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }" { (expression_statement "sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);" (call_expression "sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4)" identifier (argument_list "(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4)" ( number_literal , (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x21c4" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "iVar8 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar8 = *(int *)(puVar13 + 0x11dc10)" identifier = (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) ))))) ;) (expression_statement "iVar4 = *(int *)(iVar2 + -0xb74);" (assignment_expression "iVar4 = *(int *)(iVar2 + -0xb74)" identifier = (pointer_expression "*(int *)(iVar2 + -0xb74)" * (cast_expression "(int *)(iVar2 + -0xb74)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb74)" ( (binary_expression "iVar2 + -0xb74" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1390) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1390) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1390)" * (cast_expression "(undefined4 *)(iVar8 + 0x1390)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1390)" ( (binary_expression "iVar8 + 0x1390" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1394) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1394) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1394)" * (cast_expression "(undefined4 *)(iVar8 + 0x1394)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1394)" ( (binary_expression "iVar8 + 0x1394" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1398) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1398) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1398)" * (cast_expression "(undefined4 *)(iVar8 + 0x1398)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1398)" ( (binary_expression "iVar8 + 0x1398" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x139c) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x139c) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x139c)" * (cast_expression "(undefined4 *)(iVar8 + 0x139c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x139c)" ( (binary_expression "iVar8 + 0x139c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x13a0) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x13a0) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x13a0)" * (cast_expression "(undefined4 *)(iVar8 + 0x13a0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x13a0)" ( (binary_expression "iVar8 + 0x13a0" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x13a4) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x13a4) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x13a4)" * (cast_expression "(undefined4 *)(iVar8 + 0x13a4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x13a4)" ( (binary_expression "iVar8 + 0x13a4" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar3 = 0;\n    }" { (expression_statement "uVar3 = 0;" (assignment_expression "uVar3 = 0" identifier = number_literal) ;) }) (else_clause "else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }" else (compound_statement "{\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }" { (expression_statement "uVar3 = (**(code **)(iVar2 + -0xb24))(3);" (assignment_expression "uVar3 = (**(code **)(iVar2 + -0xb24))(3)" identifier = (call_expression "(**(code **)(iVar2 + -0xb24))(3)" (parenthesized_expression "(**(code **)(iVar2 + -0xb24))" ( (pointer_expression "**(code **)(iVar2 + -0xb24)" * (pointer_expression "*(code **)(iVar2 + -0xb24)" * (cast_expression "(code **)(iVar2 + -0xb24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb24)" ( (binary_expression "iVar2 + -0xb24" identifier + number_literal) ))))) )) (argument_list "(3)" ( number_literal )))) ;) }))) (expression_statement "iVar4 = *(int *)(iVar2 + -0xab0);" (assignment_expression "iVar4 = *(int *)(iVar2 + -0xab0)" identifier = (pointer_expression "*(int *)(iVar2 + -0xab0)" * (cast_expression "(int *)(iVar2 + -0xab0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xab0)" ( (binary_expression "iVar2 + -0xab0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1390) = uVar3;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1390) = uVar3" (pointer_expression "*(undefined4 *)(iVar8 + 0x1390)" * (cast_expression "(undefined4 *)(iVar8 + 0x1390)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1390)" ( (binary_expression "iVar8 + 0x1390" identifier + number_literal) )))) = identifier) ;) (if_statement "if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }" if (parenthesized_expression "((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200))" ( (binary_expression "(iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)" (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) || (parenthesized_expression "(*(int *)(iVar2 + -0xaac) < 0x200)" ( (binary_expression "*(int *)(iVar2 + -0xaac) < 0x200" (pointer_expression "*(int *)(iVar2 + -0xaac)" * (cast_expression "(int *)(iVar2 + -0xaac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xaac)" ( (binary_expression "iVar2 + -0xaac" identifier + number_literal) )))) < number_literal) ))) )) (compound_statement "{\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }" { (expression_statement "*(undefined4 *)(iVar2 + -0xab0) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xab0) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xab0)" * (cast_expression "(undefined4 *)(iVar2 + -0xab0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xab0)" ( (binary_expression "iVar2 + -0xab0" identifier + number_literal) )))) = number_literal) ;) (labeled_statement "LAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;" statement_identifier : (expression_statement "*(undefined4 *)(iVar2 + -0xaac) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xaac) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xaac)" * (cast_expression "(undefined4 *)(iVar2 + -0xaac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xaac)" ( (binary_expression "iVar2 + -0xaac" identifier + number_literal) )))) = number_literal) ;)) }) (else_clause "else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }" else (if_statement "if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }" if (parenthesized_expression "(*(int *)(iVar2 + -0xaa8) < 1)" ( (binary_expression "*(int *)(iVar2 + -0xaa8) < 1" (pointer_expression "*(int *)(iVar2 + -0xaa8)" * (cast_expression "(int *)(iVar2 + -0xaa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xaa8)" ( (binary_expression "iVar2 + -0xaa8" identifier + number_literal) )))) < number_literal) )) (compound_statement "{\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }" { (expression_statement "*(undefined4 *)(iVar2 + -0xab0) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xab0) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xab0)" * (cast_expression "(undefined4 *)(iVar2 + -0xab0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xab0)" ( (binary_expression "iVar2 + -0xab0" identifier + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_00072f48;" goto statement_identifier ;) })))) (expression_statement "iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));" (assignment_expression "iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30))" identifier = (call_expression "(**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30))" (parenthesized_expression "(**(code **)(iVar2 + -0xb38))" ( (pointer_expression "**(code **)(iVar2 + -0xb38)" * (pointer_expression "*(code **)(iVar2 + -0xb38)" * (cast_expression "(code **)(iVar2 + -0xb38)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb38)" ( (binary_expression "iVar2 + -0xb38" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar2 + -0xb30))" ( (pointer_expression "*(undefined4 *)(iVar2 + -0xb30)" * (cast_expression "(undefined4 *)(iVar2 + -0xb30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb30)" ( (binary_expression "iVar2 + -0xb30" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }" { (expression_statement "*(undefined4 *)(iVar8 + 0x1390) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1390) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1390)" * (cast_expression "(undefined4 *)(iVar8 + 0x1390)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1390)" ( (binary_expression "iVar8 + 0x1390" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1394) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1394) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1394)" * (cast_expression "(undefined4 *)(iVar8 + 0x1394)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1394)" ( (binary_expression "iVar8 + 0x1394" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1398) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1398) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1398)" * (cast_expression "(undefined4 *)(iVar8 + 0x1398)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1398)" ( (binary_expression "iVar8 + 0x1398" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x139c) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x139c) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x139c)" * (cast_expression "(undefined4 *)(iVar8 + 0x139c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x139c)" ( (binary_expression "iVar8 + 0x139c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x13a0) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x13a0) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x13a0)" * (cast_expression "(undefined4 *)(iVar8 + 0x13a0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x13a0)" ( (binary_expression "iVar8 + 0x13a0" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x13a4) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x13a4) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x13a4)" * (cast_expression "(undefined4 *)(iVar8 + 0x13a4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x13a4)" ( (binary_expression "iVar8 + 0x13a4" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }" { (expression_statement "(**(code **)(iVar2 + -0xb14))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb14))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" ( (pointer_expression "**(code **)(iVar2 + -0xb14)" * (pointer_expression "*(code **)(iVar2 + -0xb14)" * (cast_expression "(code **)(iVar2 + -0xb14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb14)" ( (binary_expression "iVar2 + -0xb14" identifier + number_literal) ))))) )) (argument_list "(iVar12)" ( identifier ))) ;) })) (return_statement "return iVar4;" return identifier ;) })) })) (expression_statement "*(undefined4 *)(iVar2 + -0xa8c) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa8c) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa8c)" * (cast_expression "(undefined4 *)(iVar2 + -0xa8c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa8c)" ( (binary_expression "iVar2 + -0xa8c" identifier + number_literal) )))) = number_literal) ;) (if_statement "if ((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)) {\n    iVar4 = (**(code **)(iVar2 + -0xb24))(1);\n    *(int *)(iVar2 + -0xa80) = iVar4;\n    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }\n  }" if (parenthesized_expression "((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0))" ( (binary_expression "(*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)" (parenthesized_expression "(*(int *)(iVar2 + -0xa80) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xa80) == 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" * (cast_expression "(int *)(iVar2 + -0xa80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) == number_literal) )) && (parenthesized_expression "(*(int *)(iVar2 + -0xb74) != 0)" ( (binary_expression "*(int *)(iVar2 + -0xb74) != 0" (pointer_expression "*(int *)(iVar2 + -0xb74)" * (cast_expression "(int *)(iVar2 + -0xb74)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb74)" ( (binary_expression "iVar2 + -0xb74" identifier + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n    iVar4 = (**(code **)(iVar2 + -0xb24))(1);\n    *(int *)(iVar2 + -0xa80) = iVar4;\n    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }\n  }" { (expression_statement "iVar4 = (**(code **)(iVar2 + -0xb24))(1);" (assignment_expression "iVar4 = (**(code **)(iVar2 + -0xb24))(1)" identifier = (call_expression "(**(code **)(iVar2 + -0xb24))(1)" (parenthesized_expression "(**(code **)(iVar2 + -0xb24))" ( (pointer_expression "**(code **)(iVar2 + -0xb24)" * (pointer_expression "*(code **)(iVar2 + -0xb24)" * (cast_expression "(code **)(iVar2 + -0xb24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb24)" ( (binary_expression "iVar2 + -0xb24" identifier + number_literal) ))))) )) (argument_list "(1)" ( number_literal )))) ;) (expression_statement "*(int *)(iVar2 + -0xa80) = iVar4;" (assignment_expression "*(int *)(iVar2 + -0xa80) = iVar4" (pointer_expression "*(int *)(iVar2 + -0xa80)" * (cast_expression "(int *)(iVar2 + -0xa80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) = identifier) ;) (if_statement "if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }" if (parenthesized_expression "((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0))" ( (binary_expression "(*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)" (parenthesized_expression "(*(int *)(iVar2 + -0xb74) != 0)" ( (binary_expression "*(int *)(iVar2 + -0xb74) != 0" (pointer_expression "*(int *)(iVar2 + -0xb74)" * (cast_expression "(int *)(iVar2 + -0xb74)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb74)" ( (binary_expression "iVar2 + -0xb74" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) ))) )) (compound_statement "{\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }" { (if_statement "if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }" { (expression_statement "(**(code **)(iVar2 + -0xb14))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb14))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" ( (pointer_expression "**(code **)(iVar2 + -0xb14)" * (pointer_expression "*(code **)(iVar2 + -0xb14)" * (cast_expression "(code **)(iVar2 + -0xb14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb14)" ( (binary_expression "iVar2 + -0xb14" identifier + number_literal) ))))) )) (argument_list "(iVar12)" ( identifier ))) ;) })) (return_statement "return 7;" return number_literal ;) })) })) (expression_statement "*(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1;" (assignment_expression "*(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1" (pointer_expression "*(int *)(iVar2 + -0xa84)" * (cast_expression "(int *)(iVar2 + -0xa84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa84)" ( (binary_expression "iVar2 + -0xa84" identifier + number_literal) )))) = (binary_expression "*(int *)(iVar2 + -0xa84) + 1" (pointer_expression "*(int *)(iVar2 + -0xa84)" * (cast_expression "(int *)(iVar2 + -0xa84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa84)" ( (binary_expression "iVar2 + -0xa84" identifier + number_literal) )))) + number_literal)) ;) (if_statement "if (iVar12 != 0) {\n    (**(code **)(iVar2 + -0xb14))(iVar12);\n  }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n    (**(code **)(iVar2 + -0xb14))(iVar12);\n  }" { (expression_statement "(**(code **)(iVar2 + -0xb14))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb14))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" ( (pointer_expression "**(code **)(iVar2 + -0xb14)" * (pointer_expression "*(code **)(iVar2 + -0xb14)" * (cast_expression "(code **)(iVar2 + -0xb14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb14)" ( (binary_expression "iVar2 + -0xb14" identifier + number_literal) ))))) )) (argument_list "(iVar12)" ( identifier ))) ;) })) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;) (if_statement "if (*(int *)(iVar2 + -0xa80) == 0) {\n    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;\nLAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }\n  }\n  else {\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }" if (parenthesized_expression "(*(int *)(iVar2 + -0xa80) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xa80) == 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" * (cast_expression "(int *)(iVar2 + -0xa80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;\nLAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }\n  }" { (if_statement "if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;" if (parenthesized_expression "(*(int *)(iVar2 + -0xa98) != 0)" ( (binary_expression "*(int *)(iVar2 + -0xa98) != 0" (pointer_expression "*(int *)(iVar2 + -0xa98)" * (cast_expression "(int *)(iVar2 + -0xa98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa98)" ( (binary_expression "iVar2 + -0xa98" identifier + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_00072e7c;" goto statement_identifier ;)) (labeled_statement "LAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);" statement_identifier : (expression_statement "iVar8 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar8 = *(int *)(puVar13 + 0x11dc10)" identifier = (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) ))))) ;)) (if_statement "if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }" if (parenthesized_expression "(*(int *)(iVar2 + -0xa94) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xa94) == 0" (pointer_expression "*(int *)(iVar2 + -0xa94)" * (cast_expression "(int *)(iVar2 + -0xa94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa94)" ( (binary_expression "iVar2 + -0xa94" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }" { (expression_statement "pcVar14 = *(code **)(puVar13 + 0x11e020);" (assignment_expression "pcVar14 = *(code **)(puVar13 + 0x11e020)" identifier = (pointer_expression "*(code **)(puVar13 + 0x11e020)" * (cast_expression "(code **)(puVar13 + 0x11e020)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x11e020)" ( (binary_expression "puVar13 + 0x11e020" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" * (cast_expression "(undefined4 *)(iVar2 + -0xa94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa94)" ( (binary_expression "iVar2 + -0xa94" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar14)(iVar8 + 0x1404,0,0x5c);" (call_expression "(*pcVar14)(iVar8 + 0x1404,0,0x5c)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(iVar8 + 0x1404,0,0x5c)" ( (binary_expression "iVar8 + 0x1404" identifier + number_literal) , number_literal , number_literal ))) ;) (expression_statement "pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);" (assignment_expression "pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30)" identifier = (cast_expression "(code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar13 + 0x11de70) + -0x5d30)" ( (binary_expression "*(int *)(puVar13 + 0x11de70) + -0x5d30" (pointer_expression "*(int *)(puVar13 + 0x11de70)" * (cast_expression "(int *)(puVar13 + 0x11de70)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11de70)" ( (binary_expression "puVar13 + 0x11de70" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);" (call_expression "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3)" ( (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x5f8" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) (expression_statement "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);" (call_expression "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf)" ( (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x850" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) (expression_statement "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);" (call_expression "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(puVar13 + 0x11dc10) + -0x990,8)" ( (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x990" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) (expression_statement "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);" (call_expression "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e)" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e)" ( (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x580" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) (if_statement "if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }" if (parenthesized_expression "(*(int *)(iVar2 + -0xa88) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xa88) == 0" (pointer_expression "*(int *)(iVar2 + -0xa88)" * (cast_expression "(int *)(iVar2 + -0xa88)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa88)" ( (binary_expression "iVar2 + -0xa88" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }" { (expression_statement "pcVar14 = *(code **)(iVar2 + -0xb00);" (assignment_expression "pcVar14 = *(code **)(iVar2 + -0xb00)" identifier = (pointer_expression "*(code **)(iVar2 + -0xb00)" * (cast_expression "(code **)(iVar2 + -0xb00)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb00)" ( (binary_expression "iVar2 + -0xb00" identifier + number_literal) ))))) ;) (if_statement "if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }" if (parenthesized_expression "(pcVar14 == (code *)0x0)" ( (binary_expression "pcVar14 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }" { (expression_statement "sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);" (call_expression "sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210)" identifier (argument_list "(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210)" ( number_literal , (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x2210" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "pcVar14 = *(code **)(iVar2 + -0xb00);" (assignment_expression "pcVar14 = *(code **)(iVar2 + -0xb00)" identifier = (pointer_expression "*(code **)(iVar2 + -0xb00)" * (cast_expression "(code **)(iVar2 + -0xb00)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb00)" ( (binary_expression "iVar2 + -0xb00" identifier + number_literal) ))))) ;) })) (expression_statement "iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));" (assignment_expression "iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04))" identifier = (call_expression "(*pcVar14)(*(undefined4 *)(iVar2 + -0xb04))" (parenthesized_expression "(*pcVar14)" ( (pointer_expression "*pcVar14" * identifier) )) (argument_list "(*(undefined4 *)(iVar2 + -0xb04))" ( (pointer_expression "*(undefined4 *)(iVar2 + -0xb04)" * (cast_expression "(undefined4 *)(iVar2 + -0xb04)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xb04)" ( (binary_expression "iVar2 + -0xb04" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }" { (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" * (cast_expression "(undefined4 *)(iVar2 + -0xa94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa94)" ( (binary_expression "iVar2 + -0xa94" identifier + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_00072e64;" goto statement_identifier ;) })) })) (expression_statement "*(undefined4 *)(iVar2 + -0xa88) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa88) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa88)" * (cast_expression "(undefined4 *)(iVar2 + -0xa88)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa88)" ( (binary_expression "iVar2 + -0xa88" identifier + number_literal) )))) = number_literal) ;) (expression_statement "iVar4 = sqlite3_initialize();" (assignment_expression "iVar4 = sqlite3_initialize()" identifier = (call_expression "sqlite3_initialize()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }" if (parenthesized_expression "((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0))" ( (binary_expression "(iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)" (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) && (parenthesized_expression "(iVar4 = FUN_00069c84(10), iVar4 != 0)" ( (comma_expression "iVar4 = FUN_00069c84(10), iVar4 != 0" (assignment_expression "iVar4 = FUN_00069c84(10)" identifier = (call_expression "FUN_00069c84(10)" identifier (argument_list "(10)" ( number_literal )))) , (binary_expression "iVar4 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }" { (expression_statement "(**(code **)(puVar13 + 0x11dc34))(iVar4);" (call_expression "(**(code **)(puVar13 + 0x11dc34))(iVar4)" (parenthesized_expression "(**(code **)(puVar13 + 0x11dc34))" ( (pointer_expression "**(code **)(puVar13 + 0x11dc34)" * (pointer_expression "*(code **)(puVar13 + 0x11dc34)" * (cast_expression "(code **)(puVar13 + 0x11dc34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + 0x11dc34)" ( (binary_expression "puVar13 + 0x11dc34" identifier + number_literal) ))))) )) (argument_list "(iVar4)" ( identifier ))) ;) (expression_statement "iVar4 = sqlite3_os_init();" (assignment_expression "iVar4 = sqlite3_os_init()" identifier = (call_expression "sqlite3_os_init()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }" { (expression_statement "iVar4 = sqlite3_vfs_find(0);" (assignment_expression "iVar4 = sqlite3_vfs_find(0)" identifier = (call_expression "sqlite3_vfs_find(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar6 = *(uint *)(iVar4 + 4);" (assignment_expression "uVar6 = *(uint *)(iVar4 + 4)" identifier = (pointer_expression "*(uint *)(iVar4 + 4)" * (cast_expression "(uint *)(iVar4 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 4)" ( (binary_expression "iVar4 + 4" identifier + number_literal) ))))) ;) (expression_statement "iVar8 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar8 = *(int *)(puVar13 + 0x11dc10)" identifier = (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) ))))) ;) (if_statement "if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }" if (parenthesized_expression "(uVar6 < 0x30)" ( (binary_expression "uVar6 < 0x30" identifier < number_literal) )) (compound_statement "{\n            uVar6 = 0x30;\n          }" { (expression_statement "uVar6 = 0x30;" (assignment_expression "uVar6 = 0x30" identifier = number_literal) ;) })) (expression_statement "*(int *)(iVar8 + 0x77c) = iVar4;" (assignment_expression "*(int *)(iVar8 + 0x77c) = iVar4" (pointer_expression "*(int *)(iVar8 + 0x77c)" * (cast_expression "(int *)(iVar8 + 0x77c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x77c)" ( (binary_expression "iVar8 + 0x77c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(iVar8 + 0x76c) = uVar6;" (assignment_expression "*(uint *)(iVar8 + 0x76c) = uVar6" (pointer_expression "*(uint *)(iVar8 + 0x76c)" * (cast_expression "(uint *)(iVar8 + 0x76c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x76c)" ( (binary_expression "iVar8 + 0x76c" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar4 = sqlite3_initialize();" (assignment_expression "iVar4 = sqlite3_initialize()" identifier = (call_expression "sqlite3_initialize()" identifier (argument_list "()" ( )))) ;) (if_statement "if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }" if (parenthesized_expression "((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0))" ( (binary_expression "(iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)" (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) && (parenthesized_expression "(iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)" ( (comma_expression "iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0" (assignment_expression "iVar4 = FUN_00069ba0(iVar8 + 0x768,0)" identifier = (call_expression "FUN_00069ba0(iVar8 + 0x768,0)" identifier (argument_list "(iVar8 + 0x768,0)" ( (binary_expression "iVar8 + 0x768" identifier + number_literal) , number_literal )))) , (binary_expression "iVar4 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }" { (expression_statement "iVar8 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar8 = *(int *)(puVar13 + 0x11dc10)" identifier = (pointer_expression "*(int *)(puVar13 + 0x11dc10)" * (cast_expression "(int *)(puVar13 + 0x11dc10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0x11dc10)" ( (binary_expression "puVar13 + 0x11dc10" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }" if (parenthesized_expression "(*(int *)(iVar8 + 0x1148) != 0)" ( (binary_expression "*(int *)(iVar8 + 0x1148) != 0" (pointer_expression "*(int *)(iVar8 + 0x1148)" * (cast_expression "(int *)(iVar8 + 0x1148)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1148)" ( (binary_expression "iVar8 + 0x1148" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }" { (expression_statement "piVar10 = *(int **)(iVar2 + -0xab0);" (assignment_expression "piVar10 = *(int **)(iVar2 + -0xab0)" identifier = (pointer_expression "*(int **)(iVar2 + -0xab0)" * (cast_expression "(int **)(iVar2 + -0xab0)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xab0)" ( (binary_expression "iVar2 + -0xab0" identifier + number_literal) ))))) ;) (if_statement "if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }" if (parenthesized_expression "((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0))" ( (binary_expression "(piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)" (parenthesized_expression "(piVar10 == (int *)0x0)" ( (binary_expression "piVar10 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)" ( (comma_expression "iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0" (assignment_expression "iVar11 = *(int *)(iVar2 + -0xaa8)" identifier = (pointer_expression "*(int *)(iVar2 + -0xaa8)" * (cast_expression "(int *)(iVar2 + -0xaa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xaa8)" ( (binary_expression "iVar2 + -0xaa8" identifier + number_literal) ))))) , (binary_expression "iVar11 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }" { (expression_statement "*(undefined4 *)(iVar8 + 0x1154) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1154) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1154)" * (cast_expression "(undefined4 *)(iVar8 + 0x1154)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1154)" ( (binary_expression "iVar8 + 0x1154" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1170) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1170) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1170)" * (cast_expression "(undefined4 *)(iVar8 + 0x1170)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1170)" ( (binary_expression "iVar8 + 0x1170" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1158) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1158) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1158)" * (cast_expression "(undefined4 *)(iVar8 + 0x1158)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1158)" ( (binary_expression "iVar8 + 0x1158" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x115c) = 1;" (assignment_expression "*(undefined4 *)(iVar8 + 0x115c) = 1" (pointer_expression "*(undefined4 *)(iVar8 + 0x115c)" * (cast_expression "(undefined4 *)(iVar8 + 0x115c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x115c)" ( (binary_expression "iVar8 + 0x115c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int **)(iVar8 + 0x1160) = piVar10;" (assignment_expression "*(int **)(iVar8 + 0x1160) = piVar10" (pointer_expression "*(int **)(iVar8 + 0x1160)" * (cast_expression "(int **)(iVar8 + 0x1160)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x1160)" ( (binary_expression "iVar8 + 0x1160" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x116c) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x116c) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x116c)" * (cast_expression "(undefined4 *)(iVar8 + 0x116c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x116c)" ( (binary_expression "iVar8 + 0x116c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1174) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1174) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1174)" * (cast_expression "(undefined4 *)(iVar8 + 0x1174)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1174)" ( (binary_expression "iVar8 + 0x1174" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int **)(iVar8 + 0x1164) = piVar10;" (assignment_expression "*(int **)(iVar8 + 0x1164) = piVar10" (pointer_expression "*(int **)(iVar8 + 0x1164)" * (cast_expression "(int **)(iVar8 + 0x1164)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x1164)" ( (binary_expression "iVar8 + 0x1164" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }" else (compound_statement "{\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }" { (expression_statement "uVar6 = *(uint *)(iVar2 + -0xaac);" (assignment_expression "uVar6 = *(uint *)(iVar2 + -0xaac)" identifier = (pointer_expression "*(uint *)(iVar2 + -0xaac)" * (cast_expression "(uint *)(iVar2 + -0xaac)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xaac)" ( (binary_expression "iVar2 + -0xaac" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(iVar8 + 0x1170) = iVar11;" (assignment_expression "*(int *)(iVar8 + 0x1170) = iVar11" (pointer_expression "*(int *)(iVar8 + 0x1170)" * (cast_expression "(int *)(iVar8 + 0x1170)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1170)" ( (binary_expression "iVar8 + 0x1170" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(iVar8 + 0x1158) = iVar11;" (assignment_expression "*(int *)(iVar8 + 0x1158) = iVar11" (pointer_expression "*(int *)(iVar8 + 0x1158)" * (cast_expression "(int *)(iVar8 + 0x1158)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1158)" ( (binary_expression "iVar8 + 0x1158" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar7 = iVar11 + -1;" (assignment_expression "iVar7 = iVar11 + -1" identifier = (binary_expression "iVar11 + -1" identifier + number_literal)) ;) (expression_statement "uVar6 = uVar6 & 0xfffffff8;" (assignment_expression "uVar6 = uVar6 & 0xfffffff8" identifier = (binary_expression "uVar6 & 0xfffffff8" identifier & number_literal)) ;) (expression_statement "*(uint *)(iVar8 + 0x1154) = uVar6;" (assignment_expression "*(uint *)(iVar8 + 0x1154) = uVar6" (pointer_expression "*(uint *)(iVar8 + 0x1154)" * (cast_expression "(uint *)(iVar8 + 0x1154)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1154)" ( (binary_expression "iVar8 + 0x1154" identifier + number_literal) )))) = identifier) ;) (if_statement "if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }" if (parenthesized_expression "(iVar11 < 0x5b)" ( (binary_expression "iVar11 < 0x5b" identifier < number_literal) )) (compound_statement "{\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }" { (expression_statement "*(int **)(iVar8 + 0x1160) = piVar10;" (assignment_expression "*(int **)(iVar8 + 0x1160) = piVar10" (pointer_expression "*(int **)(iVar8 + 0x1160)" * (cast_expression "(int **)(iVar8 + 0x1160)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x1160)" ( (binary_expression "iVar8 + 0x1160" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1174) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1174) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1174)" * (cast_expression "(undefined4 *)(iVar8 + 0x1174)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1174)" ( (binary_expression "iVar8 + 0x1174" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;" (assignment_expression "*(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1" (pointer_expression "*(int *)(iVar8 + 0x115c)" * (cast_expression "(int *)(iVar8 + 0x115c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x115c)" ( (binary_expression "iVar8 + 0x115c" identifier + number_literal) )))) = (binary_expression "iVar11 / 10 + 1" (binary_expression "iVar11 / 10" identifier / number_literal) + number_literal)) ;) }) (else_clause "else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }" else (compound_statement "{\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }" { (expression_statement "*(int **)(iVar8 + 0x1160) = piVar10;" (assignment_expression "*(int **)(iVar8 + 0x1160) = piVar10" (pointer_expression "*(int **)(iVar8 + 0x1160)" * (cast_expression "(int **)(iVar8 + 0x1160)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x1160)" ( (binary_expression "iVar8 + 0x1160" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x1174) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1174) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1174)" * (cast_expression "(undefined4 *)(iVar8 + 0x1174)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x1174)" ( (binary_expression "iVar8 + 0x1174" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar8 + 0x115c) = 10;" (assignment_expression "*(undefined4 *)(iVar8 + 0x115c) = 10" (pointer_expression "*(undefined4 *)(iVar8 + 0x115c)" * (cast_expression "(undefined4 *)(iVar8 + 0x115c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar8 + 0x115c)" ( (binary_expression "iVar8 + 0x115c" identifier + number_literal) )))) = number_literal) ;) }))) (expression_statement "piVar1 = piVar10;" (assignment_expression "piVar1 = piVar10" identifier = identifier) ;) (expression_statement "piVar9 = (int *)0;" (assignment_expression "piVar9 = (int *)0" identifier = (cast_expression "(int *)0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);" do (compound_statement "{\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                }" { (expression_statement "piVar5 = piVar1;" (assignment_expression "piVar5 = piVar1" identifier = identifier) ;) (expression_statement "iVar7 = iVar7 + -1;" (assignment_expression "iVar7 = iVar7 + -1" identifier = (binary_expression "iVar7 + -1" identifier + number_literal)) ;) (expression_statement "*piVar5 = (int)piVar9;" (assignment_expression "*piVar5 = (int)piVar9" (pointer_expression "*piVar5" * identifier) = (cast_expression "(int)piVar9" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "*(int **)(iVar8 + 0x116c) = piVar5;" (assignment_expression "*(int **)(iVar8 + 0x116c) = piVar5" (pointer_expression "*(int **)(iVar8 + 0x116c)" * (cast_expression "(int **)(iVar8 + 0x116c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x116c)" ( (binary_expression "iVar8 + 0x116c" identifier + number_literal) )))) = identifier) ;) (expression_statement "piVar1 = (int *)((int)piVar5 + uVar6);" (assignment_expression "piVar1 = (int *)((int)piVar5 + uVar6)" identifier = (cast_expression "(int *)((int)piVar5 + uVar6)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar5 + uVar6)" ( (binary_expression "(int)piVar5 + uVar6" (cast_expression "(int)piVar5" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (expression_statement "piVar9 = piVar5;" (assignment_expression "piVar9 = piVar5" identifier = identifier) ;) }) while (parenthesized_expression "(iVar7 != -1)" ( (binary_expression "iVar7 != -1" identifier != number_literal) )) ;) (expression_statement "*(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);" (assignment_expression "*(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10)" (pointer_expression "*(int **)(iVar8 + 0x1164)" * (cast_expression "(int **)(iVar8 + 0x1164)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar8 + 0x1164)" ( (binary_expression "iVar8 + 0x1164" identifier + number_literal) )))) = (cast_expression "(int *)(iVar11 * uVar6 + (int)piVar10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 * uVar6 + (int)piVar10)" ( (binary_expression "iVar11 * uVar6 + (int)piVar10" (binary_expression "iVar11 * uVar6" identifier * identifier) + (cast_expression "(int)piVar10" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }))) })) (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" * (cast_expression "(undefined4 *)(iVar2 + -0xa94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa94)" ( (binary_expression "iVar2 + -0xa94" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar2 + -0xa98) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa98) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa98)" * (cast_expression "(undefined4 *)(iVar2 + -0xa98)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa98)" ( (binary_expression "iVar2 + -0xa98" identifier + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_00072e64;" goto statement_identifier ;) })) })) (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" * (cast_expression "(undefined4 *)(iVar2 + -0xa94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa94)" ( (binary_expression "iVar2 + -0xa94" identifier + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }" else (compound_statement "{\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }" { (expression_statement "iVar4 = 7;" (assignment_expression "iVar4 = 7" identifier = number_literal) ;) (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" * (cast_expression "(undefined4 *)(iVar2 + -0xa94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa94)" ( (binary_expression "iVar2 + -0xa94" identifier + number_literal) )))) = number_literal) ;) }))) })) }) (else_clause "else {\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }" else (compound_statement "{\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }" { (expression_statement "(**(code **)(iVar2 + -0xb1c))();" (call_expression "(**(code **)(iVar2 + -0xb1c))()" (parenthesized_expression "(**(code **)(iVar2 + -0xb1c))" ( (pointer_expression "**(code **)(iVar2 + -0xb1c)" * (pointer_expression "*(code **)(iVar2 + -0xb1c)" * (cast_expression "(code **)(iVar2 + -0xb1c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb1c)" ( (binary_expression "iVar2 + -0xb1c" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (if_statement "if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;" if (parenthesized_expression "(*(int *)(iVar2 + -0xa98) == 0)" ( (binary_expression "*(int *)(iVar2 + -0xa98) == 0" (pointer_expression "*(int *)(iVar2 + -0xa98)" * (cast_expression "(int *)(iVar2 + -0xa98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa98)" ( (binary_expression "iVar2 + -0xa98" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_00072e58;" goto statement_identifier ;)) }))) (labeled_statement "LAB_00072e64:\n  if (*(int *)(iVar2 + -0xa80) != 0) {\n    (**(code **)(iVar2 + -0xb14))();\n  }" statement_identifier : (if_statement "if (*(int *)(iVar2 + -0xa80) != 0) {\n    (**(code **)(iVar2 + -0xb14))();\n  }" if (parenthesized_expression "(*(int *)(iVar2 + -0xa80) != 0)" ( (binary_expression "*(int *)(iVar2 + -0xa80) != 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" * (cast_expression "(int *)(iVar2 + -0xa80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    (**(code **)(iVar2 + -0xb14))();\n  }" { (expression_statement "(**(code **)(iVar2 + -0xb14))();" (call_expression "(**(code **)(iVar2 + -0xb14))()" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" ( (pointer_expression "**(code **)(iVar2 + -0xb14)" * (pointer_expression "*(code **)(iVar2 + -0xb14)" * (cast_expression "(code **)(iVar2 + -0xb14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb14)" ( (binary_expression "iVar2 + -0xb14" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) }))) (labeled_statement "LAB_00072e7c:\n  if (iVar12 == 0) {\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }" statement_identifier : (if_statement "if (iVar12 == 0) {\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }" if (parenthesized_expression "(iVar12 == 0)" ( (binary_expression "iVar12 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }" { (expression_statement "iVar12 = *(int *)(iVar2 + -0xa84) + -1;" (assignment_expression "iVar12 = *(int *)(iVar2 + -0xa84) + -1" identifier = (binary_expression "*(int *)(iVar2 + -0xa84) + -1" (pointer_expression "*(int *)(iVar2 + -0xa84)" * (cast_expression "(int *)(iVar2 + -0xa84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa84)" ( (binary_expression "iVar2 + -0xa84" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "*(int *)(iVar2 + -0xa84) = iVar12;" (assignment_expression "*(int *)(iVar2 + -0xa84) = iVar12" (pointer_expression "*(int *)(iVar2 + -0xa84)" * (cast_expression "(int *)(iVar2 + -0xa84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa84)" ( (binary_expression "iVar2 + -0xa84" identifier + number_literal) )))) = identifier) ;) (if_statement "if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }" if (parenthesized_expression "((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0))" ( (binary_expression "(iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)" (parenthesized_expression "(iVar12 < 1)" ( (binary_expression "iVar12 < 1" identifier < number_literal) )) && (parenthesized_expression "(*(int *)(iVar2 + -0xa80) != 0)" ( (binary_expression "*(int *)(iVar2 + -0xa80) != 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" * (cast_expression "(int *)(iVar2 + -0xa80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }" { (expression_statement "(**(code **)(iVar2 + -0xb20))();" (call_expression "(**(code **)(iVar2 + -0xb20))()" (parenthesized_expression "(**(code **)(iVar2 + -0xb20))" ( (pointer_expression "**(code **)(iVar2 + -0xb20)" * (pointer_expression "*(code **)(iVar2 + -0xb20)" * (cast_expression "(code **)(iVar2 + -0xb20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb20)" ( (binary_expression "iVar2 + -0xb20" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(iVar2 + -0xa80) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa80) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa80)" * (cast_expression "(undefined4 *)(iVar2 + -0xa80)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) = number_literal) ;) })) (return_statement "return iVar4;" return identifier ;) }))) (expression_statement "(**(code **)(iVar2 + -0xb1c))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb1c))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb1c))" ( (pointer_expression "**(code **)(iVar2 + -0xb1c)" * (pointer_expression "*(code **)(iVar2 + -0xb1c)" * (cast_expression "(code **)(iVar2 + -0xb1c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb1c)" ( (binary_expression "iVar2 + -0xb1c" identifier + number_literal) ))))) )) (argument_list "(iVar12)" ( identifier ))) ;) (expression_statement "iVar8 = *(int *)(iVar2 + -0xa84) + -1;" (assignment_expression "iVar8 = *(int *)(iVar2 + -0xa84) + -1" identifier = (binary_expression "*(int *)(iVar2 + -0xa84) + -1" (pointer_expression "*(int *)(iVar2 + -0xa84)" * (cast_expression "(int *)(iVar2 + -0xa84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa84)" ( (binary_expression "iVar2 + -0xa84" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "*(int *)(iVar2 + -0xa84) = iVar8;" (assignment_expression "*(int *)(iVar2 + -0xa84) = iVar8" (pointer_expression "*(int *)(iVar2 + -0xa84)" * (cast_expression "(int *)(iVar2 + -0xa84)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa84)" ( (binary_expression "iVar2 + -0xa84" identifier + number_literal) )))) = identifier) ;) (if_statement "if ((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n    (**(code **)(iVar2 + -0xb20))();\n    *(undefined4 *)(iVar2 + -0xa80) = 0;\n  }" if (parenthesized_expression "((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0))" ( (binary_expression "(iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)" (parenthesized_expression "(iVar8 < 1)" ( (binary_expression "iVar8 < 1" identifier < number_literal) )) && (parenthesized_expression "(*(int *)(iVar2 + -0xa80) != 0)" ( (binary_expression "*(int *)(iVar2 + -0xa80) != 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" * (cast_expression "(int *)(iVar2 + -0xa80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n    (**(code **)(iVar2 + -0xb20))();\n    *(undefined4 *)(iVar2 + -0xa80) = 0;\n  }" { (expression_statement "(**(code **)(iVar2 + -0xb20))();" (call_expression "(**(code **)(iVar2 + -0xb20))()" (parenthesized_expression "(**(code **)(iVar2 + -0xb20))" ( (pointer_expression "**(code **)(iVar2 + -0xb20)" * (pointer_expression "*(code **)(iVar2 + -0xb20)" * (cast_expression "(code **)(iVar2 + -0xb20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb20)" ( (binary_expression "iVar2 + -0xb20" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(iVar2 + -0xa80) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa80) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa80)" * (cast_expression "(undefined4 *)(iVar2 + -0xa80)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0xa80)" ( (binary_expression "iVar2 + -0xa80" identifier + number_literal) )))) = number_literal) ;) })) (expression_statement "(**(code **)(iVar2 + -0xb14))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb14))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" ( (pointer_expression "**(code **)(iVar2 + -0xb14)" * (pointer_expression "*(code **)(iVar2 + -0xb14)" * (cast_expression "(code **)(iVar2 + -0xb14)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + -0xb14)" ( (binary_expression "iVar2 + -0xb14" identifier + number_literal) ))))) )) (argument_list "(iVar12)" ( identifier ))) ;) (return_statement "return iVar4;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * 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 IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression IDENT * LIT)) + LIT) ))))) )))) )) (argument_list ( )))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) ))) ;) }))) (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 = 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 = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) })) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) })) (expression_statement (assignment_expression IDENT = (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT )))) ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < LIT) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (goto_statement goto statement_identifier ;) })))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) })) (return_statement return IDENT ;) })) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != 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 ( 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 (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) })) (return_statement return LIT ;) })) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression IDENT + LIT) , LIT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (goto_statement goto statement_identifier ;) })) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( 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) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , LIT )))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT / LIT) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT * IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) }))) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (goto_statement goto statement_identifier ;) })) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) }))) })) }) (else_clause else (compound_statement { (expression_statement (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 ( ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (goto_statement goto statement_identifier ;)) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) ))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) })) (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 ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) ))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (return_statement return IDENT ;) })))
(function_definition "int sqlite3_config(uint param_1)\n\n{\n  int *piVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  int *piVar5;\n  uint uVar6;\n  int iVar7;\n  int iVar8;\n  int *piVar9;\n  int *piVar10;\n  int iVar11;\n  int iVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  \n  puVar13 = PTR___stack_chk_guard_00190e24;\n  iVar2 = *(int *)PTR___stack_chk_guard_00190e24;\n  if (*(int *)(PTR_DAT_00190948 + -0xa98) == 0) {\n    if (param_1 < 0x1e) {\n                    \n                    \n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar12 = 1;\n  }\n  else {\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }\n  if (iVar2 == *(int *)puVar13) {\n    return iVar12;\n  }\n  puVar13 = PTR___stack_chk_fail_00190df8;\n  (*(code *)PTR___stack_chk_fail_00190df8)();\n  iVar2 = *(int *)(puVar13 + 0x11dc10);\n  if (*(int *)(iVar2 + -0xa98) != 0) {\n    return 0;\n  }\n  iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))();\n  if (iVar12 != 0) {\n    return iVar12;\n  }\n  if (*(int *)(iVar2 + -0xb74) == 0) {\n    iVar12 = 0;\n  }\n  else {\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa90) = 1;\n  if (*(int *)(iVar2 + -0xa8c) == 0) {\n    if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    iVar4 = *(int *)(iVar2 + -0xb74);\n    *(undefined4 *)(iVar8 + 0x1390) = 0;\n    *(undefined4 *)(iVar8 + 0x1394) = 0;\n    *(undefined4 *)(iVar8 + 0x1398) = 0;\n    *(undefined4 *)(iVar8 + 0x139c) = 0;\n    *(undefined4 *)(iVar8 + 0x13a0) = 0;\n    *(undefined4 *)(iVar8 + 0x13a4) = 0;\n    if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }\n    iVar4 = *(int *)(iVar2 + -0xab0);\n    *(undefined4 *)(iVar8 + 0x1390) = uVar3;\n    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }\n    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));\n    if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa8c) = 1;\n  if ((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)) {\n    iVar4 = (**(code **)(iVar2 + -0xb24))(1);\n    *(int *)(iVar2 + -0xa80) = iVar4;\n    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }\n  }\n  *(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1;\n  if (iVar12 != 0) {\n    (**(code **)(iVar2 + -0xb14))(iVar12);\n  }\n  iVar4 = 0;\n  if (*(int *)(iVar2 + -0xa80) == 0) {\n    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;\nLAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }\n  }\n  else {\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }\nLAB_00072e64:\n  if (*(int *)(iVar2 + -0xa80) != 0) {\n    (**(code **)(iVar2 + -0xb14))();\n  }\nLAB_00072e7c:\n  if (iVar12 == 0) {\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }\n  (**(code **)(iVar2 + -0xb1c))(iVar12);\n  iVar8 = *(int *)(iVar2 + -0xa84) + -1;\n  *(int *)(iVar2 + -0xa84) = iVar8;\n  if ((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n    (**(code **)(iVar2 + -0xb20))();\n    *(undefined4 *)(iVar2 + -0xa80) = 0;\n  }\n  (**(code **)(iVar2 + -0xb14))(iVar12);\n  return iVar4;\n}" (primitive_type "int") (function_declarator "sqlite3_config(uint param_1)" (identifier "sqlite3_config") (parameter_list "(uint param_1)" (( "(") (parameter_declaration "uint param_1" (type_identifier "uint") (identifier "param_1")) () ")"))) (compound_statement "{\n  int *piVar1;\n  int iVar2;\n  undefined4 uVar3;\n  int iVar4;\n  int *piVar5;\n  uint uVar6;\n  int iVar7;\n  int iVar8;\n  int *piVar9;\n  int *piVar10;\n  int iVar11;\n  int iVar12;\n  undefined *puVar13;\n  code *pcVar14;\n  \n  puVar13 = PTR___stack_chk_guard_00190e24;\n  iVar2 = *(int *)PTR___stack_chk_guard_00190e24;\n  if (*(int *)(PTR_DAT_00190948 + -0xa98) == 0) {\n    if (param_1 < 0x1e) {\n                    \n                    \n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar12 = 1;\n  }\n  else {\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }\n  if (iVar2 == *(int *)puVar13) {\n    return iVar12;\n  }\n  puVar13 = PTR___stack_chk_fail_00190df8;\n  (*(code *)PTR___stack_chk_fail_00190df8)();\n  iVar2 = *(int *)(puVar13 + 0x11dc10);\n  if (*(int *)(iVar2 + -0xa98) != 0) {\n    return 0;\n  }\n  iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))();\n  if (iVar12 != 0) {\n    return iVar12;\n  }\n  if (*(int *)(iVar2 + -0xb74) == 0) {\n    iVar12 = 0;\n  }\n  else {\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa90) = 1;\n  if (*(int *)(iVar2 + -0xa8c) == 0) {\n    if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    iVar4 = *(int *)(iVar2 + -0xb74);\n    *(undefined4 *)(iVar8 + 0x1390) = 0;\n    *(undefined4 *)(iVar8 + 0x1394) = 0;\n    *(undefined4 *)(iVar8 + 0x1398) = 0;\n    *(undefined4 *)(iVar8 + 0x139c) = 0;\n    *(undefined4 *)(iVar8 + 0x13a0) = 0;\n    *(undefined4 *)(iVar8 + 0x13a4) = 0;\n    if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }\n    iVar4 = *(int *)(iVar2 + -0xab0);\n    *(undefined4 *)(iVar8 + 0x1390) = uVar3;\n    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }\n    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));\n    if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }\n  }\n  *(undefined4 *)(iVar2 + -0xa8c) = 1;\n  if ((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)) {\n    iVar4 = (**(code **)(iVar2 + -0xb24))(1);\n    *(int *)(iVar2 + -0xa80) = iVar4;\n    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }\n  }\n  *(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1;\n  if (iVar12 != 0) {\n    (**(code **)(iVar2 + -0xb14))(iVar12);\n  }\n  iVar4 = 0;\n  if (*(int *)(iVar2 + -0xa80) == 0) {\n    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;\nLAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }\n  }\n  else {\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }\nLAB_00072e64:\n  if (*(int *)(iVar2 + -0xa80) != 0) {\n    (**(code **)(iVar2 + -0xb14))();\n  }\nLAB_00072e7c:\n  if (iVar12 == 0) {\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }\n  (**(code **)(iVar2 + -0xb1c))(iVar12);\n  iVar8 = *(int *)(iVar2 + -0xa84) + -1;\n  *(int *)(iVar2 + -0xa84) = iVar8;\n  if ((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n    (**(code **)(iVar2 + -0xb20))();\n    *(undefined4 *)(iVar2 + -0xa80) = 0;\n  }\n  (**(code **)(iVar2 + -0xb14))(iVar12);\n  return iVar4;\n}" ({ "{") (declaration "int *piVar1;" (primitive_type "int") (pointer_declarator "*piVar1" (* "*") (identifier "piVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "undefined4 uVar3;" (type_identifier "undefined4") (identifier "uVar3") (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "int *piVar5;" (primitive_type "int") (pointer_declarator "*piVar5" (* "*") (identifier "piVar5")) (; ";")) (declaration "uint uVar6;" (type_identifier "uint") (identifier "uVar6") (; ";")) (declaration "int iVar7;" (primitive_type "int") (identifier "iVar7") (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "int *piVar9;" (primitive_type "int") (pointer_declarator "*piVar9" (* "*") (identifier "piVar9")) (; ";")) (declaration "int *piVar10;" (primitive_type "int") (pointer_declarator "*piVar10" (* "*") (identifier "piVar10")) (; ";")) (declaration "int iVar11;" (primitive_type "int") (identifier "iVar11") (; ";")) (declaration "int iVar12;" (primitive_type "int") (identifier "iVar12") (; ";")) (declaration "undefined *puVar13;" (type_identifier "undefined") (pointer_declarator "*puVar13" (* "*") (identifier "puVar13")) (; ";")) (declaration "code *pcVar14;" (type_identifier "code") (pointer_declarator "*pcVar14" (* "*") (identifier "pcVar14")) (; ";")) (expression_statement "puVar13 = PTR___stack_chk_guard_00190e24;" (assignment_expression "puVar13 = PTR___stack_chk_guard_00190e24" (identifier "puVar13") (= "=") (identifier "PTR___stack_chk_guard_00190e24")) (; ";")) (expression_statement "iVar2 = *(int *)PTR___stack_chk_guard_00190e24;" (assignment_expression "iVar2 = *(int *)PTR___stack_chk_guard_00190e24" (identifier "iVar2") (= "=") (pointer_expression "*(int *)PTR___stack_chk_guard_00190e24" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_00190e24" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_00190e24")))) (; ";")) (if_statement "if (*(int *)(PTR_DAT_00190948 + -0xa98) == 0) {\n    if (param_1 < 0x1e) {\n                    \n                    \n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar12 = 1;\n  }\n  else {\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }" (if "if") (parenthesized_expression "(*(int *)(PTR_DAT_00190948 + -0xa98) == 0)" (( "(") (binary_expression "*(int *)(PTR_DAT_00190948 + -0xa98) == 0" (pointer_expression "*(int *)(PTR_DAT_00190948 + -0xa98)" (* "*") (cast_expression "(int *)(PTR_DAT_00190948 + -0xa98)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_00190948 + -0xa98)" (( "(") (binary_expression "PTR_DAT_00190948 + -0xa98" (identifier "PTR_DAT_00190948") (+ "+") (number_literal "-0xa98")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    if (param_1 < 0x1e) {\n                    \n                    \n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }\n    iVar12 = 1;\n  }" ({ "{") (if_statement "if (param_1 < 0x1e) {\n                    \n                    \n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }" (if "if") (parenthesized_expression "(param_1 < 0x1e)" (( "(") (binary_expression "param_1 < 0x1e" (identifier "param_1") (< "<") (number_literal "0x1e")) () ")")) (compound_statement "{\n                    \n                    \n      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();\n      return iVar2;\n    }" ({ "{") (expression_statement "iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))();" (assignment_expression "iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))()" (identifier "iVar2") (= "=") (call_expression "(*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))()" (parenthesized_expression "(*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)))" (( "(") (pointer_expression "*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc))" (* "*") (cast_expression "(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc))" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc))" (( "(") (binary_expression "&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)" (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1")) (+ "+") (pointer_expression "*(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)" (* "*") (cast_expression "(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc)" (( "(") (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4 + 0x34dc" (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c +\n                                          param_1 * 4" (identifier "PTR_s_o_page_from_root____pageno_INTEG_0019095c") (+ "+") (binary_expression "param_1 * 4" (identifier "param_1") (* "*") (number_literal "4"))) (+ "+") (number_literal "0x34dc")) () ")"))))) () ")")))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (return_statement "return iVar2;" (return "return") (identifier "iVar2") (; ";")) (} "}"))) (expression_statement "iVar12 = 1;" (assignment_expression "iVar12 = 1" (identifier "iVar12") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }" (else "else") (compound_statement "{\n    iVar12 = 0x15;\n    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);\n  }" ({ "{") (expression_statement "iVar12 = 0x15;" (assignment_expression "iVar12 = 0x15" (identifier "iVar12") (= "=") (number_literal "0x15")) (; ";")) (expression_statement "sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c);" (call_expression "sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c)" (identifier "sqlite3_log") (argument_list "(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,\n                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,\n                PTR_LAB_00190958 + 0x625c)" (( "(") (number_literal "0x15") (, ",") (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378" (identifier "PTR_s_o_page_from_root____pageno_INTEG_0019095c") (+ "+") (number_literal "-0x6378")) (, ",") (binary_expression "PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380" (identifier "PTR_s_o_page_from_root____pageno_INTEG_0019095c") (+ "+") (number_literal "-0x6380")) (, ",") (number_literal "0x259ec") (, ",") (binary_expression "PTR_LAB_00190958 + 0x625c" (identifier "PTR_LAB_00190958") (+ "+") (number_literal "0x625c")) () ")"))) (; ";")) (} "}")))) (if_statement "if (iVar2 == *(int *)puVar13) {\n    return iVar12;\n  }" (if "if") (parenthesized_expression "(iVar2 == *(int *)puVar13)" (( "(") (binary_expression "iVar2 == *(int *)puVar13" (identifier "iVar2") (== "==") (pointer_expression "*(int *)puVar13" (* "*") (cast_expression "(int *)puVar13" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar13")))) () ")")) (compound_statement "{\n    return iVar12;\n  }" ({ "{") (return_statement "return iVar12;" (return "return") (identifier "iVar12") (; ";")) (} "}"))) (expression_statement "puVar13 = PTR___stack_chk_fail_00190df8;" (assignment_expression "puVar13 = PTR___stack_chk_fail_00190df8" (identifier "puVar13") (= "=") (identifier "PTR___stack_chk_fail_00190df8")) (; ";")) (expression_statement "(*(code *)PTR___stack_chk_fail_00190df8)();" (call_expression "(*(code *)PTR___stack_chk_fail_00190df8)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_00190df8)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_00190df8" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_00190df8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_00190df8"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar2 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar2 = *(int *)(puVar13 + 0x11dc10)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar13 + 0x11dc10)" (* "*") (cast_expression "(int *)(puVar13 + 0x11dc10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0x11dc10)" (( "(") (binary_expression "puVar13 + 0x11dc10" (identifier "puVar13") (+ "+") (number_literal "0x11dc10")) () ")"))))) (; ";")) (if_statement "if (*(int *)(iVar2 + -0xa98) != 0) {\n    return 0;\n  }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + -0xa98) != 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xa98) != 0" (pointer_expression "*(int *)(iVar2 + -0xa98)" (* "*") (cast_expression "(int *)(iVar2 + -0xa98)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa98)" (( "(") (binary_expression "iVar2 + -0xa98" (identifier "iVar2") (+ "+") (number_literal "-0xa98")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    return 0;\n  }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))();" (assignment_expression "iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))()" (identifier "iVar12") (= "=") (call_expression "(*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))()" (parenthesized_expression "(*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))" (( "(") (pointer_expression "*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88)" (* "*") (cast_expression "(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar13 + 0x11de70) + -0x5e88)" (( "(") (binary_expression "*(int *)(puVar13 + 0x11de70) + -0x5e88" (pointer_expression "*(int *)(puVar13 + 0x11de70)" (* "*") (cast_expression "(int *)(puVar13 + 0x11de70)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0x11de70)" (( "(") (binary_expression "puVar13 + 0x11de70" (identifier "puVar13") (+ "+") (number_literal "0x11de70")) () ")")))) (+ "+") (number_literal "-0x5e88")) () ")")))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar12 != 0) {\n    return iVar12;\n  }" (if "if") (parenthesized_expression "(iVar12 != 0)" (( "(") (binary_expression "iVar12 != 0" (identifier "iVar12") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    return iVar12;\n  }" ({ "{") (return_statement "return iVar12;" (return "return") (identifier "iVar12") (; ";")) (} "}"))) (if_statement "if (*(int *)(iVar2 + -0xb74) == 0) {\n    iVar12 = 0;\n  }\n  else {\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + -0xb74) == 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xb74) == 0" (pointer_expression "*(int *)(iVar2 + -0xb74)" (* "*") (cast_expression "(int *)(iVar2 + -0xb74)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xb74)" (( "(") (binary_expression "iVar2 + -0xb74" (identifier "iVar2") (+ "+") (number_literal "-0xb74")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar12 = 0;\n  }" ({ "{") (expression_statement "iVar12 = 0;" (assignment_expression "iVar12 = 0" (identifier "iVar12") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }" (else "else") (compound_statement "{\n    iVar12 = (**(code **)(iVar2 + -0xb24))(2);\n    if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }\n  }" ({ "{") (expression_statement "iVar12 = (**(code **)(iVar2 + -0xb24))(2);" (assignment_expression "iVar12 = (**(code **)(iVar2 + -0xb24))(2)" (identifier "iVar12") (= "=") (call_expression "(**(code **)(iVar2 + -0xb24))(2)" (parenthesized_expression "(**(code **)(iVar2 + -0xb24))" (( "(") (pointer_expression "**(code **)(iVar2 + -0xb24)" (* "*") (pointer_expression "*(code **)(iVar2 + -0xb24)" (* "*") (cast_expression "(code **)(iVar2 + -0xb24)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb24)" (( "(") (binary_expression "iVar2 + -0xb24" (identifier "iVar2") (+ "+") (number_literal "-0xb24")) () ")"))))) () ")")) (argument_list "(2)" (( "(") (number_literal "2") () ")")))) (; ";")) (if_statement "if (iVar12 != 0) {\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }" (if "if") (parenthesized_expression "(iVar12 != 0)" (( "(") (binary_expression "iVar12 != 0" (identifier "iVar12") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      (**(code **)(iVar2 + -0xb1c))(iVar12);\n    }" ({ "{") (expression_statement "(**(code **)(iVar2 + -0xb1c))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb1c))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb1c))" (( "(") (pointer_expression "**(code **)(iVar2 + -0xb1c)" (* "*") (pointer_expression "*(code **)(iVar2 + -0xb1c)" (* "*") (cast_expression "(code **)(iVar2 + -0xb1c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb1c)" (( "(") (binary_expression "iVar2 + -0xb1c" (identifier "iVar2") (+ "+") (number_literal "-0xb1c")) () ")"))))) () ")")) (argument_list "(iVar12)" (( "(") (identifier "iVar12") () ")"))) (; ";")) (} "}"))) (} "}")))) (expression_statement "*(undefined4 *)(iVar2 + -0xa90) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa90) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa90)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xa90)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa90)" (( "(") (binary_expression "iVar2 + -0xa90" (identifier "iVar2") (+ "+") (number_literal "-0xa90")) () ")")))) (= "=") (number_literal "1")) (; ";")) (if_statement "if (*(int *)(iVar2 + -0xa8c) == 0) {\n    if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    iVar4 = *(int *)(iVar2 + -0xb74);\n    *(undefined4 *)(iVar8 + 0x1390) = 0;\n    *(undefined4 *)(iVar8 + 0x1394) = 0;\n    *(undefined4 *)(iVar8 + 0x1398) = 0;\n    *(undefined4 *)(iVar8 + 0x139c) = 0;\n    *(undefined4 *)(iVar8 + 0x13a0) = 0;\n    *(undefined4 *)(iVar8 + 0x13a4) = 0;\n    if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }\n    iVar4 = *(int *)(iVar2 + -0xab0);\n    *(undefined4 *)(iVar8 + 0x1390) = uVar3;\n    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }\n    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));\n    if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }\n  }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + -0xa8c) == 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xa8c) == 0" (pointer_expression "*(int *)(iVar2 + -0xa8c)" (* "*") (cast_expression "(int *)(iVar2 + -0xa8c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa8c)" (( "(") (binary_expression "iVar2 + -0xa8c" (identifier "iVar2") (+ "+") (number_literal "-0xa8c")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    iVar4 = *(int *)(iVar2 + -0xb74);\n    *(undefined4 *)(iVar8 + 0x1390) = 0;\n    *(undefined4 *)(iVar8 + 0x1394) = 0;\n    *(undefined4 *)(iVar8 + 0x1398) = 0;\n    *(undefined4 *)(iVar8 + 0x139c) = 0;\n    *(undefined4 *)(iVar8 + 0x13a0) = 0;\n    *(undefined4 *)(iVar8 + 0x13a4) = 0;\n    if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }\n    iVar4 = *(int *)(iVar2 + -0xab0);\n    *(undefined4 *)(iVar8 + 0x1390) = uVar3;\n    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }\n    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));\n    if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }\n  }" ({ "{") (if_statement "if (*(int *)(iVar2 + -0xb4c) == 0) {\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + -0xb4c) == 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xb4c) == 0" (pointer_expression "*(int *)(iVar2 + -0xb4c)" (* "*") (cast_expression "(int *)(iVar2 + -0xb4c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xb4c)" (( "(") (binary_expression "iVar2 + -0xb4c" (identifier "iVar2") (+ "+") (number_literal "-0xb4c")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);\n    }" ({ "{") (expression_statement "sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);" (call_expression "sqlite3_config(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4)" (identifier "sqlite3_config") (argument_list "(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4)" (( "(") (number_literal "4") (, ",") (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x21c4" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" (* "*") (cast_expression "(int *)(puVar13 + 0x11dc10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0x11dc10)" (( "(") (binary_expression "puVar13 + 0x11dc10" (identifier "puVar13") (+ "+") (number_literal "0x11dc10")) () ")")))) (+ "+") (number_literal "-0x21c4")) () ")"))) (; ";")) (} "}"))) (expression_statement "iVar8 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar8 = *(int *)(puVar13 + 0x11dc10)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(puVar13 + 0x11dc10)" (* "*") (cast_expression "(int *)(puVar13 + 0x11dc10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0x11dc10)" (( "(") (binary_expression "puVar13 + 0x11dc10" (identifier "puVar13") (+ "+") (number_literal "0x11dc10")) () ")"))))) (; ";")) (expression_statement "iVar4 = *(int *)(iVar2 + -0xb74);" (assignment_expression "iVar4 = *(int *)(iVar2 + -0xb74)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(iVar2 + -0xb74)" (* "*") (cast_expression "(int *)(iVar2 + -0xb74)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xb74)" (( "(") (binary_expression "iVar2 + -0xb74" (identifier "iVar2") (+ "+") (number_literal "-0xb74")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x1390) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1390) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1390)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x1390)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1390)" (( "(") (binary_expression "iVar8 + 0x1390" (identifier "iVar8") (+ "+") (number_literal "0x1390")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x1394) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1394) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1394)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x1394)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1394)" (( "(") (binary_expression "iVar8 + 0x1394" (identifier "iVar8") (+ "+") (number_literal "0x1394")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x1398) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1398) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1398)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x1398)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1398)" (( "(") (binary_expression "iVar8 + 0x1398" (identifier "iVar8") (+ "+") (number_literal "0x1398")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x139c) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x139c) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x139c)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x139c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x139c)" (( "(") (binary_expression "iVar8 + 0x139c" (identifier "iVar8") (+ "+") (number_literal "0x139c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x13a0) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x13a0) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x13a0)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x13a0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x13a0)" (( "(") (binary_expression "iVar8 + 0x13a0" (identifier "iVar8") (+ "+") (number_literal "0x13a0")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x13a4) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x13a4) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x13a4)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x13a4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x13a4)" (( "(") (binary_expression "iVar8 + 0x13a4" (identifier "iVar8") (+ "+") (number_literal "0x13a4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if (iVar4 == 0) {\n      uVar3 = 0;\n    }\n    else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      uVar3 = 0;\n    }" ({ "{") (expression_statement "uVar3 = 0;" (assignment_expression "uVar3 = 0" (identifier "uVar3") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }" (else "else") (compound_statement "{\n      uVar3 = (**(code **)(iVar2 + -0xb24))(3);\n    }" ({ "{") (expression_statement "uVar3 = (**(code **)(iVar2 + -0xb24))(3);" (assignment_expression "uVar3 = (**(code **)(iVar2 + -0xb24))(3)" (identifier "uVar3") (= "=") (call_expression "(**(code **)(iVar2 + -0xb24))(3)" (parenthesized_expression "(**(code **)(iVar2 + -0xb24))" (( "(") (pointer_expression "**(code **)(iVar2 + -0xb24)" (* "*") (pointer_expression "*(code **)(iVar2 + -0xb24)" (* "*") (cast_expression "(code **)(iVar2 + -0xb24)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb24)" (( "(") (binary_expression "iVar2 + -0xb24" (identifier "iVar2") (+ "+") (number_literal "-0xb24")) () ")"))))) () ")")) (argument_list "(3)" (( "(") (number_literal "3") () ")")))) (; ";")) (} "}")))) (expression_statement "iVar4 = *(int *)(iVar2 + -0xab0);" (assignment_expression "iVar4 = *(int *)(iVar2 + -0xab0)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(iVar2 + -0xab0)" (* "*") (cast_expression "(int *)(iVar2 + -0xab0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xab0)" (( "(") (binary_expression "iVar2 + -0xab0" (identifier "iVar2") (+ "+") (number_literal "-0xab0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x1390) = uVar3;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1390) = uVar3" (pointer_expression "*(undefined4 *)(iVar8 + 0x1390)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x1390)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1390)" (( "(") (binary_expression "iVar8 + 0x1390" (identifier "iVar8") (+ "+") (number_literal "0x1390")) () ")")))) (= "=") (identifier "uVar3")) (; ";")) (if_statement "if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }\n    else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }" (if "if") (parenthesized_expression "((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200))" (( "(") (binary_expression "(iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)" (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(*(int *)(iVar2 + -0xaac) < 0x200)" (( "(") (binary_expression "*(int *)(iVar2 + -0xaac) < 0x200" (pointer_expression "*(int *)(iVar2 + -0xaac)" (* "*") (cast_expression "(int *)(iVar2 + -0xaac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xaac)" (( "(") (binary_expression "iVar2 + -0xaac" (identifier "iVar2") (+ "+") (number_literal "-0xaac")) () ")")))) (< "<") (number_literal "0x200")) () ")"))) () ")")) (compound_statement "{\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\nLAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;\n    }" ({ "{") (expression_statement "*(undefined4 *)(iVar2 + -0xab0) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xab0) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xab0)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xab0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xab0)" (( "(") (binary_expression "iVar2 + -0xab0" (identifier "iVar2") (+ "+") (number_literal "-0xab0")) () ")")))) (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_00072f48:\n      *(undefined4 *)(iVar2 + -0xaac) = 0;" (statement_identifier "LAB_00072f48") (: ":") (expression_statement "*(undefined4 *)(iVar2 + -0xaac) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xaac) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xaac)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xaac)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xaac)" (( "(") (binary_expression "iVar2 + -0xaac" (identifier "iVar2") (+ "+") (number_literal "-0xaac")) () ")")))) (= "=") (number_literal "0")) (; ";"))) (} "}")) (else_clause "else if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }" (else "else") (if_statement "if (*(int *)(iVar2 + -0xaa8) < 1) {\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + -0xaa8) < 1)" (( "(") (binary_expression "*(int *)(iVar2 + -0xaa8) < 1" (pointer_expression "*(int *)(iVar2 + -0xaa8)" (* "*") (cast_expression "(int *)(iVar2 + -0xaa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xaa8)" (( "(") (binary_expression "iVar2 + -0xaa8" (identifier "iVar2") (+ "+") (number_literal "-0xaa8")) () ")")))) (< "<") (number_literal "1")) () ")")) (compound_statement "{\n      *(undefined4 *)(iVar2 + -0xab0) = 0;\n      goto LAB_00072f48;\n    }" ({ "{") (expression_statement "*(undefined4 *)(iVar2 + -0xab0) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xab0) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xab0)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xab0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xab0)" (( "(") (binary_expression "iVar2 + -0xab0" (identifier "iVar2") (+ "+") (number_literal "-0xab0")) () ")")))) (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_00072f48;" (goto "goto") (statement_identifier "LAB_00072f48") (; ";")) (} "}"))))) (expression_statement "iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));" (assignment_expression "iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30))" (identifier "iVar4") (= "=") (call_expression "(**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30))" (parenthesized_expression "(**(code **)(iVar2 + -0xb38))" (( "(") (pointer_expression "**(code **)(iVar2 + -0xb38)" (* "*") (pointer_expression "*(code **)(iVar2 + -0xb38)" (* "*") (cast_expression "(code **)(iVar2 + -0xb38)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb38)" (( "(") (binary_expression "iVar2 + -0xb38" (identifier "iVar2") (+ "+") (number_literal "-0xb38")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar2 + -0xb30))" (( "(") (pointer_expression "*(undefined4 *)(iVar2 + -0xb30)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xb30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xb30)" (( "(") (binary_expression "iVar2 + -0xb30" (identifier "iVar2") (+ "+") (number_literal "-0xb30")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar4 != 0) {\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }" (if "if") (parenthesized_expression "(iVar4 != 0)" (( "(") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      *(undefined4 *)(iVar8 + 0x1390) = 0;\n      *(undefined4 *)(iVar8 + 0x1394) = 0;\n      *(undefined4 *)(iVar8 + 0x1398) = 0;\n      *(undefined4 *)(iVar8 + 0x139c) = 0;\n      *(undefined4 *)(iVar8 + 0x13a0) = 0;\n      *(undefined4 *)(iVar8 + 0x13a4) = 0;\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return iVar4;\n    }" ({ "{") (expression_statement "*(undefined4 *)(iVar8 + 0x1390) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1390) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1390)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x1390)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1390)" (( "(") (binary_expression "iVar8 + 0x1390" (identifier "iVar8") (+ "+") (number_literal "0x1390")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x1394) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1394) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1394)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x1394)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1394)" (( "(") (binary_expression "iVar8 + 0x1394" (identifier "iVar8") (+ "+") (number_literal "0x1394")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x1398) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1398) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1398)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x1398)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1398)" (( "(") (binary_expression "iVar8 + 0x1398" (identifier "iVar8") (+ "+") (number_literal "0x1398")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x139c) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x139c) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x139c)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x139c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x139c)" (( "(") (binary_expression "iVar8 + 0x139c" (identifier "iVar8") (+ "+") (number_literal "0x139c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x13a0) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x13a0) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x13a0)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x13a0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x13a0)" (( "(") (binary_expression "iVar8 + 0x13a0" (identifier "iVar8") (+ "+") (number_literal "0x13a0")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x13a4) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x13a4) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x13a4)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x13a4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x13a4)" (( "(") (binary_expression "iVar8 + 0x13a4" (identifier "iVar8") (+ "+") (number_literal "0x13a4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }" (if "if") (parenthesized_expression "(iVar12 != 0)" (( "(") (binary_expression "iVar12 != 0" (identifier "iVar12") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }" ({ "{") (expression_statement "(**(code **)(iVar2 + -0xb14))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb14))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" (( "(") (pointer_expression "**(code **)(iVar2 + -0xb14)" (* "*") (pointer_expression "*(code **)(iVar2 + -0xb14)" (* "*") (cast_expression "(code **)(iVar2 + -0xb14)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb14)" (( "(") (binary_expression "iVar2 + -0xb14" (identifier "iVar2") (+ "+") (number_literal "-0xb14")) () ")"))))) () ")")) (argument_list "(iVar12)" (( "(") (identifier "iVar12") () ")"))) (; ";")) (} "}"))) (return_statement "return iVar4;" (return "return") (identifier "iVar4") (; ";")) (} "}"))) (} "}"))) (expression_statement "*(undefined4 *)(iVar2 + -0xa8c) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa8c) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa8c)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xa8c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa8c)" (( "(") (binary_expression "iVar2 + -0xa8c" (identifier "iVar2") (+ "+") (number_literal "-0xa8c")) () ")")))) (= "=") (number_literal "1")) (; ";")) (if_statement "if ((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)) {\n    iVar4 = (**(code **)(iVar2 + -0xb24))(1);\n    *(int *)(iVar2 + -0xa80) = iVar4;\n    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }\n  }" (if "if") (parenthesized_expression "((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0))" (( "(") (binary_expression "(*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)" (parenthesized_expression "(*(int *)(iVar2 + -0xa80) == 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xa80) == 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" (* "*") (cast_expression "(int *)(iVar2 + -0xa80)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa80)" (( "(") (binary_expression "iVar2 + -0xa80" (identifier "iVar2") (+ "+") (number_literal "-0xa80")) () ")")))) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(int *)(iVar2 + -0xb74) != 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xb74) != 0" (pointer_expression "*(int *)(iVar2 + -0xb74)" (* "*") (cast_expression "(int *)(iVar2 + -0xb74)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xb74)" (( "(") (binary_expression "iVar2 + -0xb74" (identifier "iVar2") (+ "+") (number_literal "-0xb74")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n    iVar4 = (**(code **)(iVar2 + -0xb24))(1);\n    *(int *)(iVar2 + -0xa80) = iVar4;\n    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }\n  }" ({ "{") (expression_statement "iVar4 = (**(code **)(iVar2 + -0xb24))(1);" (assignment_expression "iVar4 = (**(code **)(iVar2 + -0xb24))(1)" (identifier "iVar4") (= "=") (call_expression "(**(code **)(iVar2 + -0xb24))(1)" (parenthesized_expression "(**(code **)(iVar2 + -0xb24))" (( "(") (pointer_expression "**(code **)(iVar2 + -0xb24)" (* "*") (pointer_expression "*(code **)(iVar2 + -0xb24)" (* "*") (cast_expression "(code **)(iVar2 + -0xb24)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb24)" (( "(") (binary_expression "iVar2 + -0xb24" (identifier "iVar2") (+ "+") (number_literal "-0xb24")) () ")"))))) () ")")) (argument_list "(1)" (( "(") (number_literal "1") () ")")))) (; ";")) (expression_statement "*(int *)(iVar2 + -0xa80) = iVar4;" (assignment_expression "*(int *)(iVar2 + -0xa80) = iVar4" (pointer_expression "*(int *)(iVar2 + -0xa80)" (* "*") (cast_expression "(int *)(iVar2 + -0xa80)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa80)" (( "(") (binary_expression "iVar2 + -0xa80" (identifier "iVar2") (+ "+") (number_literal "-0xa80")) () ")")))) (= "=") (identifier "iVar4")) (; ";")) (if_statement "if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }" (if "if") (parenthesized_expression "((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0))" (( "(") (binary_expression "(*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)" (parenthesized_expression "(*(int *)(iVar2 + -0xb74) != 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xb74) != 0" (pointer_expression "*(int *)(iVar2 + -0xb74)" (* "*") (cast_expression "(int *)(iVar2 + -0xb74)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xb74)" (( "(") (binary_expression "iVar2 + -0xb74" (identifier "iVar2") (+ "+") (number_literal "-0xb74")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n      if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }\n      return 7;\n    }" ({ "{") (if_statement "if (iVar12 != 0) {\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }" (if "if") (parenthesized_expression "(iVar12 != 0)" (( "(") (binary_expression "iVar12 != 0" (identifier "iVar12") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        (**(code **)(iVar2 + -0xb14))(iVar12);\n      }" ({ "{") (expression_statement "(**(code **)(iVar2 + -0xb14))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb14))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" (( "(") (pointer_expression "**(code **)(iVar2 + -0xb14)" (* "*") (pointer_expression "*(code **)(iVar2 + -0xb14)" (* "*") (cast_expression "(code **)(iVar2 + -0xb14)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb14)" (( "(") (binary_expression "iVar2 + -0xb14" (identifier "iVar2") (+ "+") (number_literal "-0xb14")) () ")"))))) () ")")) (argument_list "(iVar12)" (( "(") (identifier "iVar12") () ")"))) (; ";")) (} "}"))) (return_statement "return 7;" (return "return") (number_literal "7") (; ";")) (} "}"))) (} "}"))) (expression_statement "*(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1;" (assignment_expression "*(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1" (pointer_expression "*(int *)(iVar2 + -0xa84)" (* "*") (cast_expression "(int *)(iVar2 + -0xa84)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa84)" (( "(") (binary_expression "iVar2 + -0xa84" (identifier "iVar2") (+ "+") (number_literal "-0xa84")) () ")")))) (= "=") (binary_expression "*(int *)(iVar2 + -0xa84) + 1" (pointer_expression "*(int *)(iVar2 + -0xa84)" (* "*") (cast_expression "(int *)(iVar2 + -0xa84)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa84)" (( "(") (binary_expression "iVar2 + -0xa84" (identifier "iVar2") (+ "+") (number_literal "-0xa84")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (iVar12 != 0) {\n    (**(code **)(iVar2 + -0xb14))(iVar12);\n  }" (if "if") (parenthesized_expression "(iVar12 != 0)" (( "(") (binary_expression "iVar12 != 0" (identifier "iVar12") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    (**(code **)(iVar2 + -0xb14))(iVar12);\n  }" ({ "{") (expression_statement "(**(code **)(iVar2 + -0xb14))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb14))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" (( "(") (pointer_expression "**(code **)(iVar2 + -0xb14)" (* "*") (pointer_expression "*(code **)(iVar2 + -0xb14)" (* "*") (cast_expression "(code **)(iVar2 + -0xb14)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb14)" (( "(") (binary_expression "iVar2 + -0xb14" (identifier "iVar2") (+ "+") (number_literal "-0xb14")) () ")"))))) () ")")) (argument_list "(iVar12)" (( "(") (identifier "iVar12") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" (identifier "iVar4") (= "=") (number_literal "0")) (; ";")) (if_statement "if (*(int *)(iVar2 + -0xa80) == 0) {\n    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;\nLAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }\n  }\n  else {\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + -0xa80) == 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xa80) == 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" (* "*") (cast_expression "(int *)(iVar2 + -0xa80)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa80)" (( "(") (binary_expression "iVar2 + -0xa80" (identifier "iVar2") (+ "+") (number_literal "-0xa80")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;\nLAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);\n    if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }\n  }" ({ "{") (if_statement "if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;" (if "if") (parenthesized_expression "(*(int *)(iVar2 + -0xa98) != 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xa98) != 0" (pointer_expression "*(int *)(iVar2 + -0xa98)" (* "*") (cast_expression "(int *)(iVar2 + -0xa98)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa98)" (( "(") (binary_expression "iVar2 + -0xa98" (identifier "iVar2") (+ "+") (number_literal "-0xa98")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00072e7c;" (goto "goto") (statement_identifier "LAB_00072e7c") (; ";"))) (labeled_statement "LAB_00072e58:\n    iVar8 = *(int *)(puVar13 + 0x11dc10);" (statement_identifier "LAB_00072e58") (: ":") (expression_statement "iVar8 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar8 = *(int *)(puVar13 + 0x11dc10)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(puVar13 + 0x11dc10)" (* "*") (cast_expression "(int *)(puVar13 + 0x11dc10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0x11dc10)" (( "(") (binary_expression "puVar13 + 0x11dc10" (identifier "puVar13") (+ "+") (number_literal "0x11dc10")) () ")"))))) (; ";"))) (if_statement "if (*(int *)(iVar2 + -0xa94) == 0) {\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + -0xa94) == 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xa94) == 0" (pointer_expression "*(int *)(iVar2 + -0xa94)" (* "*") (cast_expression "(int *)(iVar2 + -0xa94)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa94)" (( "(") (binary_expression "iVar2 + -0xa94" (identifier "iVar2") (+ "+") (number_literal "-0xa94")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      pcVar14 = *(code **)(puVar13 + 0x11e020);\n      *(undefined4 *)(iVar2 + -0xa94) = 1;\n      (*pcVar14)(iVar8 + 0x1404,0,0x5c);\n      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);\n      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);\n      if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }\n      *(undefined4 *)(iVar2 + -0xa88) = 1;\n      iVar4 = sqlite3_initialize();\n      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n    }" ({ "{") (expression_statement "pcVar14 = *(code **)(puVar13 + 0x11e020);" (assignment_expression "pcVar14 = *(code **)(puVar13 + 0x11e020)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(puVar13 + 0x11e020)" (* "*") (cast_expression "(code **)(puVar13 + 0x11e020)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar13 + 0x11e020)" (( "(") (binary_expression "puVar13 + 0x11e020" (identifier "puVar13") (+ "+") (number_literal "0x11e020")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xa94)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa94)" (( "(") (binary_expression "iVar2 + -0xa94" (identifier "iVar2") (+ "+") (number_literal "-0xa94")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "(*pcVar14)(iVar8 + 0x1404,0,0x5c);" (call_expression "(*pcVar14)(iVar8 + 0x1404,0,0x5c)" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(iVar8 + 0x1404,0,0x5c)" (( "(") (binary_expression "iVar8 + 0x1404" (identifier "iVar8") (+ "+") (number_literal "0x1404")) (, ",") (number_literal "0") (, ",") (number_literal "0x5c") () ")"))) (; ";")) (expression_statement "pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);" (assignment_expression "pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30)" (identifier "pcVar14") (= "=") (cast_expression "(code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar13 + 0x11de70) + -0x5d30)" (( "(") (binary_expression "*(int *)(puVar13 + 0x11de70) + -0x5d30" (pointer_expression "*(int *)(puVar13 + 0x11de70)" (* "*") (cast_expression "(int *)(puVar13 + 0x11de70)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0x11de70)" (( "(") (binary_expression "puVar13 + 0x11de70" (identifier "puVar13") (+ "+") (number_literal "0x11de70")) () ")")))) (+ "+") (number_literal "-0x5d30")) () ")")))) (; ";")) (expression_statement "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);" (call_expression "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3)" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3)" (( "(") (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x5f8" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" (* "*") (cast_expression "(int *)(puVar13 + 0x11dc10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0x11dc10)" (( "(") (binary_expression "puVar13 + 0x11dc10" (identifier "puVar13") (+ "+") (number_literal "0x11dc10")) () ")")))) (+ "+") (number_literal "-0x5f8")) (, ",") (number_literal "3") () ")"))) (; ";")) (expression_statement "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);" (call_expression "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf)" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf)" (( "(") (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x850" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" (* "*") (cast_expression "(int *)(puVar13 + 0x11dc10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0x11dc10)" (( "(") (binary_expression "puVar13 + 0x11dc10" (identifier "puVar13") (+ "+") (number_literal "0x11dc10")) () ")")))) (+ "+") (number_literal "-0x850")) (, ",") (number_literal "0xf") () ")"))) (; ";")) (expression_statement "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);" (call_expression "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8)" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(*(int *)(puVar13 + 0x11dc10) + -0x990,8)" (( "(") (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x990" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" (* "*") (cast_expression "(int *)(puVar13 + 0x11dc10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0x11dc10)" (( "(") (binary_expression "puVar13 + 0x11dc10" (identifier "puVar13") (+ "+") (number_literal "0x11dc10")) () ")")))) (+ "+") (number_literal "-0x990")) (, ",") (number_literal "8") () ")"))) (; ";")) (expression_statement "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);" (call_expression "(*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e)" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e)" (( "(") (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x580" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" (* "*") (cast_expression "(int *)(puVar13 + 0x11dc10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0x11dc10)" (( "(") (binary_expression "puVar13 + 0x11dc10" (identifier "puVar13") (+ "+") (number_literal "0x11dc10")) () ")")))) (+ "+") (number_literal "-0x580")) (, ",") (number_literal "0x3e") () ")"))) (; ";")) (if_statement "if (*(int *)(iVar2 + -0xa88) == 0) {\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + -0xa88) == 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xa88) == 0" (pointer_expression "*(int *)(iVar2 + -0xa88)" (* "*") (cast_expression "(int *)(iVar2 + -0xa88)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa88)" (( "(") (binary_expression "iVar2 + -0xa88" (identifier "iVar2") (+ "+") (number_literal "-0xa88")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        pcVar14 = *(code **)(iVar2 + -0xb00);\n        if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }\n        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));\n        if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }\n      }" ({ "{") (expression_statement "pcVar14 = *(code **)(iVar2 + -0xb00);" (assignment_expression "pcVar14 = *(code **)(iVar2 + -0xb00)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(iVar2 + -0xb00)" (* "*") (cast_expression "(code **)(iVar2 + -0xb00)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb00)" (( "(") (binary_expression "iVar2 + -0xb00" (identifier "iVar2") (+ "+") (number_literal "-0xb00")) () ")"))))) (; ";")) (if_statement "if (pcVar14 == (code *)0x0) {\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }" (if "if") (parenthesized_expression "(pcVar14 == (code *)0x0)" (( "(") (binary_expression "pcVar14 == (code *)0x0" (identifier "pcVar14") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);\n          pcVar14 = *(code **)(iVar2 + -0xb00);\n        }" ({ "{") (expression_statement "sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);" (call_expression "sqlite3_config(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210)" (identifier "sqlite3_config") (argument_list "(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210)" (( "(") (number_literal "0x12") (, ",") (binary_expression "*(int *)(puVar13 + 0x11dc10) + -0x2210" (pointer_expression "*(int *)(puVar13 + 0x11dc10)" (* "*") (cast_expression "(int *)(puVar13 + 0x11dc10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0x11dc10)" (( "(") (binary_expression "puVar13 + 0x11dc10" (identifier "puVar13") (+ "+") (number_literal "0x11dc10")) () ")")))) (+ "+") (number_literal "-0x2210")) () ")"))) (; ";")) (expression_statement "pcVar14 = *(code **)(iVar2 + -0xb00);" (assignment_expression "pcVar14 = *(code **)(iVar2 + -0xb00)" (identifier "pcVar14") (= "=") (pointer_expression "*(code **)(iVar2 + -0xb00)" (* "*") (cast_expression "(code **)(iVar2 + -0xb00)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb00)" (( "(") (binary_expression "iVar2 + -0xb00" (identifier "iVar2") (+ "+") (number_literal "-0xb00")) () ")"))))) (; ";")) (} "}"))) (expression_statement "iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));" (assignment_expression "iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04))" (identifier "iVar4") (= "=") (call_expression "(*pcVar14)(*(undefined4 *)(iVar2 + -0xb04))" (parenthesized_expression "(*pcVar14)" (( "(") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) () ")")) (argument_list "(*(undefined4 *)(iVar2 + -0xb04))" (( "(") (pointer_expression "*(undefined4 *)(iVar2 + -0xb04)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xb04)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xb04)" (( "(") (binary_expression "iVar2 + -0xb04" (identifier "iVar2") (+ "+") (number_literal "-0xb04")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar4 != 0) {\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }" (if "if") (parenthesized_expression "(iVar4 != 0)" (( "(") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          *(undefined4 *)(iVar2 + -0xa94) = 0;\n          goto LAB_00072e64;\n        }" ({ "{") (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xa94)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa94)" (( "(") (binary_expression "iVar2 + -0xa94" (identifier "iVar2") (+ "+") (number_literal "-0xa94")) () ")")))) (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_00072e64;" (goto "goto") (statement_identifier "LAB_00072e64") (; ";")) (} "}"))) (} "}"))) (expression_statement "*(undefined4 *)(iVar2 + -0xa88) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa88) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa88)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xa88)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa88)" (( "(") (binary_expression "iVar2 + -0xa88" (identifier "iVar2") (+ "+") (number_literal "-0xa88")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "iVar4 = sqlite3_initialize();" (assignment_expression "iVar4 = sqlite3_initialize()" (identifier "iVar4") (= "=") (call_expression "sqlite3_initialize()" (identifier "sqlite3_initialize") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }\n      else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }" (if "if") (parenthesized_expression "((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0))" (( "(") (binary_expression "(iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)" (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar4 = FUN_00069c84(10), iVar4 != 0)" (( "(") (comma_expression "iVar4 = FUN_00069c84(10), iVar4 != 0" (assignment_expression "iVar4 = FUN_00069c84(10)" (identifier "iVar4") (= "=") (call_expression "FUN_00069c84(10)" (identifier "FUN_00069c84") (argument_list "(10)" (( "(") (number_literal "10") () ")")))) (, ",") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n        (**(code **)(puVar13 + 0x11dc34))(iVar4);\n        iVar4 = sqlite3_os_init();\n        if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }" ({ "{") (expression_statement "(**(code **)(puVar13 + 0x11dc34))(iVar4);" (call_expression "(**(code **)(puVar13 + 0x11dc34))(iVar4)" (parenthesized_expression "(**(code **)(puVar13 + 0x11dc34))" (( "(") (pointer_expression "**(code **)(puVar13 + 0x11dc34)" (* "*") (pointer_expression "*(code **)(puVar13 + 0x11dc34)" (* "*") (cast_expression "(code **)(puVar13 + 0x11dc34)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar13 + 0x11dc34)" (( "(") (binary_expression "puVar13 + 0x11dc34" (identifier "puVar13") (+ "+") (number_literal "0x11dc34")) () ")"))))) () ")")) (argument_list "(iVar4)" (( "(") (identifier "iVar4") () ")"))) (; ";")) (expression_statement "iVar4 = sqlite3_os_init();" (assignment_expression "iVar4 = sqlite3_os_init()" (identifier "iVar4") (= "=") (call_expression "sqlite3_os_init()" (identifier "sqlite3_os_init") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar4 == 0) {\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          iVar4 = sqlite3_vfs_find(0);\n          uVar6 = *(uint *)(iVar4 + 4);\n          iVar8 = *(int *)(puVar13 + 0x11dc10);\n          if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }\n          *(int *)(iVar8 + 0x77c) = iVar4;\n          *(uint *)(iVar8 + 0x76c) = uVar6;\n          iVar4 = sqlite3_initialize();\n          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }\n        }" ({ "{") (expression_statement "iVar4 = sqlite3_vfs_find(0);" (assignment_expression "iVar4 = sqlite3_vfs_find(0)" (identifier "iVar4") (= "=") (call_expression "sqlite3_vfs_find(0)" (identifier "sqlite3_vfs_find") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "uVar6 = *(uint *)(iVar4 + 4);" (assignment_expression "uVar6 = *(uint *)(iVar4 + 4)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(iVar4 + 4)" (* "*") (cast_expression "(uint *)(iVar4 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 4)" (( "(") (binary_expression "iVar4 + 4" (identifier "iVar4") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "iVar8 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar8 = *(int *)(puVar13 + 0x11dc10)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(puVar13 + 0x11dc10)" (* "*") (cast_expression "(int *)(puVar13 + 0x11dc10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0x11dc10)" (( "(") (binary_expression "puVar13 + 0x11dc10" (identifier "puVar13") (+ "+") (number_literal "0x11dc10")) () ")"))))) (; ";")) (if_statement "if (uVar6 < 0x30) {\n            uVar6 = 0x30;\n          }" (if "if") (parenthesized_expression "(uVar6 < 0x30)" (( "(") (binary_expression "uVar6 < 0x30" (identifier "uVar6") (< "<") (number_literal "0x30")) () ")")) (compound_statement "{\n            uVar6 = 0x30;\n          }" ({ "{") (expression_statement "uVar6 = 0x30;" (assignment_expression "uVar6 = 0x30" (identifier "uVar6") (= "=") (number_literal "0x30")) (; ";")) (} "}"))) (expression_statement "*(int *)(iVar8 + 0x77c) = iVar4;" (assignment_expression "*(int *)(iVar8 + 0x77c) = iVar4" (pointer_expression "*(int *)(iVar8 + 0x77c)" (* "*") (cast_expression "(int *)(iVar8 + 0x77c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x77c)" (( "(") (binary_expression "iVar8 + 0x77c" (identifier "iVar8") (+ "+") (number_literal "0x77c")) () ")")))) (= "=") (identifier "iVar4")) (; ";")) (expression_statement "*(uint *)(iVar8 + 0x76c) = uVar6;" (assignment_expression "*(uint *)(iVar8 + 0x76c) = uVar6" (pointer_expression "*(uint *)(iVar8 + 0x76c)" (* "*") (cast_expression "(uint *)(iVar8 + 0x76c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x76c)" (( "(") (binary_expression "iVar8 + 0x76c" (identifier "iVar8") (+ "+") (number_literal "0x76c")) () ")")))) (= "=") (identifier "uVar6")) (; ";")) (expression_statement "iVar4 = sqlite3_initialize();" (assignment_expression "iVar4 = sqlite3_initialize()" (identifier "iVar4") (= "=") (call_expression "sqlite3_initialize()" (identifier "sqlite3_initialize") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }" (if "if") (parenthesized_expression "((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0))" (( "(") (binary_expression "(iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)" (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)" (( "(") (comma_expression "iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0" (assignment_expression "iVar4 = FUN_00069ba0(iVar8 + 0x768,0)" (identifier "iVar4") (= "=") (call_expression "FUN_00069ba0(iVar8 + 0x768,0)" (identifier "FUN_00069ba0") (argument_list "(iVar8 + 0x768,0)" (( "(") (binary_expression "iVar8 + 0x768" (identifier "iVar8") (+ "+") (number_literal "0x768")) (, ",") (number_literal "0") () ")")))) (, ",") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n            iVar8 = *(int *)(puVar13 + 0x11dc10);\n            if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }\n            *(undefined4 *)(iVar2 + -0xa94) = 0;\n            *(undefined4 *)(iVar2 + -0xa98) = 1;\n            goto LAB_00072e64;\n          }" ({ "{") (expression_statement "iVar8 = *(int *)(puVar13 + 0x11dc10);" (assignment_expression "iVar8 = *(int *)(puVar13 + 0x11dc10)" (identifier "iVar8") (= "=") (pointer_expression "*(int *)(puVar13 + 0x11dc10)" (* "*") (cast_expression "(int *)(puVar13 + 0x11dc10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0x11dc10)" (( "(") (binary_expression "puVar13 + 0x11dc10" (identifier "puVar13") (+ "+") (number_literal "0x11dc10")) () ")"))))) (; ";")) (if_statement "if (*(int *)(iVar8 + 0x1148) != 0) {\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }" (if "if") (parenthesized_expression "(*(int *)(iVar8 + 0x1148) != 0)" (( "(") (binary_expression "*(int *)(iVar8 + 0x1148) != 0" (pointer_expression "*(int *)(iVar8 + 0x1148)" (* "*") (cast_expression "(int *)(iVar8 + 0x1148)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1148)" (( "(") (binary_expression "iVar8 + 0x1148" (identifier "iVar8") (+ "+") (number_literal "0x1148")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              piVar10 = *(int **)(iVar2 + -0xab0);\n              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }\n            }" ({ "{") (expression_statement "piVar10 = *(int **)(iVar2 + -0xab0);" (assignment_expression "piVar10 = *(int **)(iVar2 + -0xab0)" (identifier "piVar10") (= "=") (pointer_expression "*(int **)(iVar2 + -0xab0)" (* "*") (cast_expression "(int **)(iVar2 + -0xab0)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xab0)" (( "(") (binary_expression "iVar2 + -0xab0" (identifier "iVar2") (+ "+") (number_literal "-0xab0")) () ")"))))) (; ";")) (if_statement "if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }\n              else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }" (if "if") (parenthesized_expression "((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0))" (( "(") (binary_expression "(piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)" (parenthesized_expression "(piVar10 == (int *)0x0)" (( "(") (binary_expression "piVar10 == (int *)0x0" (identifier "piVar10") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)" (( "(") (comma_expression "iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0" (assignment_expression "iVar11 = *(int *)(iVar2 + -0xaa8)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(iVar2 + -0xaa8)" (* "*") (cast_expression "(int *)(iVar2 + -0xaa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xaa8)" (( "(") (binary_expression "iVar2 + -0xaa8" (identifier "iVar2") (+ "+") (number_literal "-0xaa8")) () ")"))))) (, ",") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n                *(undefined4 *)(iVar8 + 0x1154) = 0;\n                *(undefined4 *)(iVar8 + 0x1170) = 0;\n                *(undefined4 *)(iVar8 + 0x1158) = 0;\n                *(undefined4 *)(iVar8 + 0x115c) = 1;\n                *(int **)(iVar8 + 0x1160) = piVar10;\n                *(undefined4 *)(iVar8 + 0x116c) = 0;\n                *(undefined4 *)(iVar8 + 0x1174) = 0;\n                *(int **)(iVar8 + 0x1164) = piVar10;\n              }" ({ "{") (expression_statement "*(undefined4 *)(iVar8 + 0x1154) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1154) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1154)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x1154)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1154)" (( "(") (binary_expression "iVar8 + 0x1154" (identifier "iVar8") (+ "+") (number_literal "0x1154")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x1170) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1170) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1170)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x1170)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1170)" (( "(") (binary_expression "iVar8 + 0x1170" (identifier "iVar8") (+ "+") (number_literal "0x1170")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x1158) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1158) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1158)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x1158)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1158)" (( "(") (binary_expression "iVar8 + 0x1158" (identifier "iVar8") (+ "+") (number_literal "0x1158")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x115c) = 1;" (assignment_expression "*(undefined4 *)(iVar8 + 0x115c) = 1" (pointer_expression "*(undefined4 *)(iVar8 + 0x115c)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x115c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x115c)" (( "(") (binary_expression "iVar8 + 0x115c" (identifier "iVar8") (+ "+") (number_literal "0x115c")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(int **)(iVar8 + 0x1160) = piVar10;" (assignment_expression "*(int **)(iVar8 + 0x1160) = piVar10" (pointer_expression "*(int **)(iVar8 + 0x1160)" (* "*") (cast_expression "(int **)(iVar8 + 0x1160)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar8 + 0x1160)" (( "(") (binary_expression "iVar8 + 0x1160" (identifier "iVar8") (+ "+") (number_literal "0x1160")) () ")")))) (= "=") (identifier "piVar10")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x116c) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x116c) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x116c)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x116c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x116c)" (( "(") (binary_expression "iVar8 + 0x116c" (identifier "iVar8") (+ "+") (number_literal "0x116c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x1174) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1174) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1174)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x1174)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1174)" (( "(") (binary_expression "iVar8 + 0x1174" (identifier "iVar8") (+ "+") (number_literal "0x1174")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(int **)(iVar8 + 0x1164) = piVar10;" (assignment_expression "*(int **)(iVar8 + 0x1164) = piVar10" (pointer_expression "*(int **)(iVar8 + 0x1164)" (* "*") (cast_expression "(int **)(iVar8 + 0x1164)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar8 + 0x1164)" (( "(") (binary_expression "iVar8 + 0x1164" (identifier "iVar8") (+ "+") (number_literal "0x1164")) () ")")))) (= "=") (identifier "piVar10")) (; ";")) (} "}")) (else_clause "else {\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }" (else "else") (compound_statement "{\n                uVar6 = *(uint *)(iVar2 + -0xaac);\n                *(int *)(iVar8 + 0x1170) = iVar11;\n                *(int *)(iVar8 + 0x1158) = iVar11;\n                iVar7 = iVar11 + -1;\n                uVar6 = uVar6 & 0xfffffff8;\n                *(uint *)(iVar8 + 0x1154) = uVar6;\n                if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }\n                piVar1 = piVar10;\n                piVar9 = (int *)0;\n                do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);\n                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);\n              }" ({ "{") (expression_statement "uVar6 = *(uint *)(iVar2 + -0xaac);" (assignment_expression "uVar6 = *(uint *)(iVar2 + -0xaac)" (identifier "uVar6") (= "=") (pointer_expression "*(uint *)(iVar2 + -0xaac)" (* "*") (cast_expression "(uint *)(iVar2 + -0xaac)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xaac)" (( "(") (binary_expression "iVar2 + -0xaac" (identifier "iVar2") (+ "+") (number_literal "-0xaac")) () ")"))))) (; ";")) (expression_statement "*(int *)(iVar8 + 0x1170) = iVar11;" (assignment_expression "*(int *)(iVar8 + 0x1170) = iVar11" (pointer_expression "*(int *)(iVar8 + 0x1170)" (* "*") (cast_expression "(int *)(iVar8 + 0x1170)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1170)" (( "(") (binary_expression "iVar8 + 0x1170" (identifier "iVar8") (+ "+") (number_literal "0x1170")) () ")")))) (= "=") (identifier "iVar11")) (; ";")) (expression_statement "*(int *)(iVar8 + 0x1158) = iVar11;" (assignment_expression "*(int *)(iVar8 + 0x1158) = iVar11" (pointer_expression "*(int *)(iVar8 + 0x1158)" (* "*") (cast_expression "(int *)(iVar8 + 0x1158)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1158)" (( "(") (binary_expression "iVar8 + 0x1158" (identifier "iVar8") (+ "+") (number_literal "0x1158")) () ")")))) (= "=") (identifier "iVar11")) (; ";")) (expression_statement "iVar7 = iVar11 + -1;" (assignment_expression "iVar7 = iVar11 + -1" (identifier "iVar7") (= "=") (binary_expression "iVar11 + -1" (identifier "iVar11") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "uVar6 = uVar6 & 0xfffffff8;" (assignment_expression "uVar6 = uVar6 & 0xfffffff8" (identifier "uVar6") (= "=") (binary_expression "uVar6 & 0xfffffff8" (identifier "uVar6") (& "&") (number_literal "0xfffffff8"))) (; ";")) (expression_statement "*(uint *)(iVar8 + 0x1154) = uVar6;" (assignment_expression "*(uint *)(iVar8 + 0x1154) = uVar6" (pointer_expression "*(uint *)(iVar8 + 0x1154)" (* "*") (cast_expression "(uint *)(iVar8 + 0x1154)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1154)" (( "(") (binary_expression "iVar8 + 0x1154" (identifier "iVar8") (+ "+") (number_literal "0x1154")) () ")")))) (= "=") (identifier "uVar6")) (; ";")) (if_statement "if (iVar11 < 0x5b) {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }\n                else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }" (if "if") (parenthesized_expression "(iVar11 < 0x5b)" (( "(") (binary_expression "iVar11 < 0x5b" (identifier "iVar11") (< "<") (number_literal "0x5b")) () ")")) (compound_statement "{\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;\n                }" ({ "{") (expression_statement "*(int **)(iVar8 + 0x1160) = piVar10;" (assignment_expression "*(int **)(iVar8 + 0x1160) = piVar10" (pointer_expression "*(int **)(iVar8 + 0x1160)" (* "*") (cast_expression "(int **)(iVar8 + 0x1160)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar8 + 0x1160)" (( "(") (binary_expression "iVar8 + 0x1160" (identifier "iVar8") (+ "+") (number_literal "0x1160")) () ")")))) (= "=") (identifier "piVar10")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x1174) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1174) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1174)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x1174)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1174)" (( "(") (binary_expression "iVar8 + 0x1174" (identifier "iVar8") (+ "+") (number_literal "0x1174")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;" (assignment_expression "*(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1" (pointer_expression "*(int *)(iVar8 + 0x115c)" (* "*") (cast_expression "(int *)(iVar8 + 0x115c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x115c)" (( "(") (binary_expression "iVar8 + 0x115c" (identifier "iVar8") (+ "+") (number_literal "0x115c")) () ")")))) (= "=") (binary_expression "iVar11 / 10 + 1" (binary_expression "iVar11 / 10" (identifier "iVar11") (/ "/") (number_literal "10")) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }" (else "else") (compound_statement "{\n                  *(int **)(iVar8 + 0x1160) = piVar10;\n                  *(undefined4 *)(iVar8 + 0x1174) = 0;\n                  *(undefined4 *)(iVar8 + 0x115c) = 10;\n                }" ({ "{") (expression_statement "*(int **)(iVar8 + 0x1160) = piVar10;" (assignment_expression "*(int **)(iVar8 + 0x1160) = piVar10" (pointer_expression "*(int **)(iVar8 + 0x1160)" (* "*") (cast_expression "(int **)(iVar8 + 0x1160)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar8 + 0x1160)" (( "(") (binary_expression "iVar8 + 0x1160" (identifier "iVar8") (+ "+") (number_literal "0x1160")) () ")")))) (= "=") (identifier "piVar10")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x1174) = 0;" (assignment_expression "*(undefined4 *)(iVar8 + 0x1174) = 0" (pointer_expression "*(undefined4 *)(iVar8 + 0x1174)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x1174)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x1174)" (( "(") (binary_expression "iVar8 + 0x1174" (identifier "iVar8") (+ "+") (number_literal "0x1174")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar8 + 0x115c) = 10;" (assignment_expression "*(undefined4 *)(iVar8 + 0x115c) = 10" (pointer_expression "*(undefined4 *)(iVar8 + 0x115c)" (* "*") (cast_expression "(undefined4 *)(iVar8 + 0x115c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar8 + 0x115c)" (( "(") (binary_expression "iVar8 + 0x115c" (identifier "iVar8") (+ "+") (number_literal "0x115c")) () ")")))) (= "=") (number_literal "10")) (; ";")) (} "}")))) (expression_statement "piVar1 = piVar10;" (assignment_expression "piVar1 = piVar10" (identifier "piVar1") (= "=") (identifier "piVar10")) (; ";")) (expression_statement "piVar9 = (int *)0;" (assignment_expression "piVar9 = (int *)0" (identifier "piVar9") (= "=") (cast_expression "(int *)0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0"))) (; ";")) (do_statement "do {\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                } while (iVar7 != -1);" (do "do") (compound_statement "{\n                  piVar5 = piVar1;\n                  iVar7 = iVar7 + -1;\n                  *piVar5 = (int)piVar9;\n                  *(int **)(iVar8 + 0x116c) = piVar5;\n                  piVar1 = (int *)((int)piVar5 + uVar6);\n                  piVar9 = piVar5;\n                }" ({ "{") (expression_statement "piVar5 = piVar1;" (assignment_expression "piVar5 = piVar1" (identifier "piVar5") (= "=") (identifier "piVar1")) (; ";")) (expression_statement "iVar7 = iVar7 + -1;" (assignment_expression "iVar7 = iVar7 + -1" (identifier "iVar7") (= "=") (binary_expression "iVar7 + -1" (identifier "iVar7") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "*piVar5 = (int)piVar9;" (assignment_expression "*piVar5 = (int)piVar9" (pointer_expression "*piVar5" (* "*") (identifier "piVar5")) (= "=") (cast_expression "(int)piVar9" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar9"))) (; ";")) (expression_statement "*(int **)(iVar8 + 0x116c) = piVar5;" (assignment_expression "*(int **)(iVar8 + 0x116c) = piVar5" (pointer_expression "*(int **)(iVar8 + 0x116c)" (* "*") (cast_expression "(int **)(iVar8 + 0x116c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar8 + 0x116c)" (( "(") (binary_expression "iVar8 + 0x116c" (identifier "iVar8") (+ "+") (number_literal "0x116c")) () ")")))) (= "=") (identifier "piVar5")) (; ";")) (expression_statement "piVar1 = (int *)((int)piVar5 + uVar6);" (assignment_expression "piVar1 = (int *)((int)piVar5 + uVar6)" (identifier "piVar1") (= "=") (cast_expression "(int *)((int)piVar5 + uVar6)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar5 + uVar6)" (( "(") (binary_expression "(int)piVar5 + uVar6" (cast_expression "(int)piVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar5")) (+ "+") (identifier "uVar6")) () ")")))) (; ";")) (expression_statement "piVar9 = piVar5;" (assignment_expression "piVar9 = piVar5" (identifier "piVar9") (= "=") (identifier "piVar5")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar7 != -1)" (( "(") (binary_expression "iVar7 != -1" (identifier "iVar7") (!= "!=") (number_literal "-1")) () ")")) (; ";")) (expression_statement "*(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);" (assignment_expression "*(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10)" (pointer_expression "*(int **)(iVar8 + 0x1164)" (* "*") (cast_expression "(int **)(iVar8 + 0x1164)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar8 + 0x1164)" (( "(") (binary_expression "iVar8 + 0x1164" (identifier "iVar8") (+ "+") (number_literal "0x1164")) () ")")))) (= "=") (cast_expression "(int *)(iVar11 * uVar6 + (int)piVar10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar11 * uVar6 + (int)piVar10)" (( "(") (binary_expression "iVar11 * uVar6 + (int)piVar10" (binary_expression "iVar11 * uVar6" (identifier "iVar11") (* "*") (identifier "uVar6")) (+ "+") (cast_expression "(int)piVar10" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar10"))) () ")")))) (; ";")) (} "}")))) (} "}"))) (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xa94)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa94)" (( "(") (binary_expression "iVar2 + -0xa94" (identifier "iVar2") (+ "+") (number_literal "-0xa94")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar2 + -0xa98) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa98) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0xa98)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xa98)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa98)" (( "(") (binary_expression "iVar2 + -0xa98" (identifier "iVar2") (+ "+") (number_literal "-0xa98")) () ")")))) (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_00072e64;" (goto "goto") (statement_identifier "LAB_00072e64") (; ";")) (} "}"))) (} "}"))) (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xa94)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa94)" (( "(") (binary_expression "iVar2 + -0xa94" (identifier "iVar2") (+ "+") (number_literal "-0xa94")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }" (else "else") (compound_statement "{\n        iVar4 = 7;\n        *(undefined4 *)(iVar2 + -0xa94) = 0;\n      }" ({ "{") (expression_statement "iVar4 = 7;" (assignment_expression "iVar4 = 7" (identifier "iVar4") (= "=") (number_literal "7")) (; ";")) (expression_statement "*(undefined4 *)(iVar2 + -0xa94) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa94) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa94)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xa94)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa94)" (( "(") (binary_expression "iVar2 + -0xa94" (identifier "iVar2") (+ "+") (number_literal "-0xa94")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}")))) (} "}"))) (} "}")) (else_clause "else {\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }" (else "else") (compound_statement "{\n    (**(code **)(iVar2 + -0xb1c))();\n    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;\n  }" ({ "{") (expression_statement "(**(code **)(iVar2 + -0xb1c))();" (call_expression "(**(code **)(iVar2 + -0xb1c))()" (parenthesized_expression "(**(code **)(iVar2 + -0xb1c))" (( "(") (pointer_expression "**(code **)(iVar2 + -0xb1c)" (* "*") (pointer_expression "*(code **)(iVar2 + -0xb1c)" (* "*") (cast_expression "(code **)(iVar2 + -0xb1c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb1c)" (( "(") (binary_expression "iVar2 + -0xb1c" (identifier "iVar2") (+ "+") (number_literal "-0xb1c")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;" (if "if") (parenthesized_expression "(*(int *)(iVar2 + -0xa98) == 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xa98) == 0" (pointer_expression "*(int *)(iVar2 + -0xa98)" (* "*") (cast_expression "(int *)(iVar2 + -0xa98)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa98)" (( "(") (binary_expression "iVar2 + -0xa98" (identifier "iVar2") (+ "+") (number_literal "-0xa98")) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00072e58;" (goto "goto") (statement_identifier "LAB_00072e58") (; ";"))) (} "}")))) (labeled_statement "LAB_00072e64:\n  if (*(int *)(iVar2 + -0xa80) != 0) {\n    (**(code **)(iVar2 + -0xb14))();\n  }" (statement_identifier "LAB_00072e64") (: ":") (if_statement "if (*(int *)(iVar2 + -0xa80) != 0) {\n    (**(code **)(iVar2 + -0xb14))();\n  }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + -0xa80) != 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xa80) != 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" (* "*") (cast_expression "(int *)(iVar2 + -0xa80)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa80)" (( "(") (binary_expression "iVar2 + -0xa80" (identifier "iVar2") (+ "+") (number_literal "-0xa80")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    (**(code **)(iVar2 + -0xb14))();\n  }" ({ "{") (expression_statement "(**(code **)(iVar2 + -0xb14))();" (call_expression "(**(code **)(iVar2 + -0xb14))()" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" (( "(") (pointer_expression "**(code **)(iVar2 + -0xb14)" (* "*") (pointer_expression "*(code **)(iVar2 + -0xb14)" (* "*") (cast_expression "(code **)(iVar2 + -0xb14)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb14)" (( "(") (binary_expression "iVar2 + -0xb14" (identifier "iVar2") (+ "+") (number_literal "-0xb14")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_00072e7c:\n  if (iVar12 == 0) {\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }" (statement_identifier "LAB_00072e7c") (: ":") (if_statement "if (iVar12 == 0) {\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }" (if "if") (parenthesized_expression "(iVar12 == 0)" (( "(") (binary_expression "iVar12 == 0" (identifier "iVar12") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar12 = *(int *)(iVar2 + -0xa84) + -1;\n    *(int *)(iVar2 + -0xa84) = iVar12;\n    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }\n    return iVar4;\n  }" ({ "{") (expression_statement "iVar12 = *(int *)(iVar2 + -0xa84) + -1;" (assignment_expression "iVar12 = *(int *)(iVar2 + -0xa84) + -1" (identifier "iVar12") (= "=") (binary_expression "*(int *)(iVar2 + -0xa84) + -1" (pointer_expression "*(int *)(iVar2 + -0xa84)" (* "*") (cast_expression "(int *)(iVar2 + -0xa84)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa84)" (( "(") (binary_expression "iVar2 + -0xa84" (identifier "iVar2") (+ "+") (number_literal "-0xa84")) () ")")))) (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "*(int *)(iVar2 + -0xa84) = iVar12;" (assignment_expression "*(int *)(iVar2 + -0xa84) = iVar12" (pointer_expression "*(int *)(iVar2 + -0xa84)" (* "*") (cast_expression "(int *)(iVar2 + -0xa84)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa84)" (( "(") (binary_expression "iVar2 + -0xa84" (identifier "iVar2") (+ "+") (number_literal "-0xa84")) () ")")))) (= "=") (identifier "iVar12")) (; ";")) (if_statement "if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }" (if "if") (parenthesized_expression "((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0))" (( "(") (binary_expression "(iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)" (parenthesized_expression "(iVar12 < 1)" (( "(") (binary_expression "iVar12 < 1" (identifier "iVar12") (< "<") (number_literal "1")) () ")")) (&& "&&") (parenthesized_expression "(*(int *)(iVar2 + -0xa80) != 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xa80) != 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" (* "*") (cast_expression "(int *)(iVar2 + -0xa80)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa80)" (( "(") (binary_expression "iVar2 + -0xa80" (identifier "iVar2") (+ "+") (number_literal "-0xa80")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n      (**(code **)(iVar2 + -0xb20))();\n      *(undefined4 *)(iVar2 + -0xa80) = 0;\n    }" ({ "{") (expression_statement "(**(code **)(iVar2 + -0xb20))();" (call_expression "(**(code **)(iVar2 + -0xb20))()" (parenthesized_expression "(**(code **)(iVar2 + -0xb20))" (( "(") (pointer_expression "**(code **)(iVar2 + -0xb20)" (* "*") (pointer_expression "*(code **)(iVar2 + -0xb20)" (* "*") (cast_expression "(code **)(iVar2 + -0xb20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb20)" (( "(") (binary_expression "iVar2 + -0xb20" (identifier "iVar2") (+ "+") (number_literal "-0xb20")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(iVar2 + -0xa80) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa80) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa80)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xa80)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa80)" (( "(") (binary_expression "iVar2 + -0xa80" (identifier "iVar2") (+ "+") (number_literal "-0xa80")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}"))) (return_statement "return iVar4;" (return "return") (identifier "iVar4") (; ";")) (} "}")))) (expression_statement "(**(code **)(iVar2 + -0xb1c))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb1c))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb1c))" (( "(") (pointer_expression "**(code **)(iVar2 + -0xb1c)" (* "*") (pointer_expression "*(code **)(iVar2 + -0xb1c)" (* "*") (cast_expression "(code **)(iVar2 + -0xb1c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb1c)" (( "(") (binary_expression "iVar2 + -0xb1c" (identifier "iVar2") (+ "+") (number_literal "-0xb1c")) () ")"))))) () ")")) (argument_list "(iVar12)" (( "(") (identifier "iVar12") () ")"))) (; ";")) (expression_statement "iVar8 = *(int *)(iVar2 + -0xa84) + -1;" (assignment_expression "iVar8 = *(int *)(iVar2 + -0xa84) + -1" (identifier "iVar8") (= "=") (binary_expression "*(int *)(iVar2 + -0xa84) + -1" (pointer_expression "*(int *)(iVar2 + -0xa84)" (* "*") (cast_expression "(int *)(iVar2 + -0xa84)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa84)" (( "(") (binary_expression "iVar2 + -0xa84" (identifier "iVar2") (+ "+") (number_literal "-0xa84")) () ")")))) (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "*(int *)(iVar2 + -0xa84) = iVar8;" (assignment_expression "*(int *)(iVar2 + -0xa84) = iVar8" (pointer_expression "*(int *)(iVar2 + -0xa84)" (* "*") (cast_expression "(int *)(iVar2 + -0xa84)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa84)" (( "(") (binary_expression "iVar2 + -0xa84" (identifier "iVar2") (+ "+") (number_literal "-0xa84")) () ")")))) (= "=") (identifier "iVar8")) (; ";")) (if_statement "if ((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {\n    (**(code **)(iVar2 + -0xb20))();\n    *(undefined4 *)(iVar2 + -0xa80) = 0;\n  }" (if "if") (parenthesized_expression "((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0))" (( "(") (binary_expression "(iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)" (parenthesized_expression "(iVar8 < 1)" (( "(") (binary_expression "iVar8 < 1" (identifier "iVar8") (< "<") (number_literal "1")) () ")")) (&& "&&") (parenthesized_expression "(*(int *)(iVar2 + -0xa80) != 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0xa80) != 0" (pointer_expression "*(int *)(iVar2 + -0xa80)" (* "*") (cast_expression "(int *)(iVar2 + -0xa80)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa80)" (( "(") (binary_expression "iVar2 + -0xa80" (identifier "iVar2") (+ "+") (number_literal "-0xa80")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n    (**(code **)(iVar2 + -0xb20))();\n    *(undefined4 *)(iVar2 + -0xa80) = 0;\n  }" ({ "{") (expression_statement "(**(code **)(iVar2 + -0xb20))();" (call_expression "(**(code **)(iVar2 + -0xb20))()" (parenthesized_expression "(**(code **)(iVar2 + -0xb20))" (( "(") (pointer_expression "**(code **)(iVar2 + -0xb20)" (* "*") (pointer_expression "*(code **)(iVar2 + -0xb20)" (* "*") (cast_expression "(code **)(iVar2 + -0xb20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb20)" (( "(") (binary_expression "iVar2 + -0xb20" (identifier "iVar2") (+ "+") (number_literal "-0xb20")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(iVar2 + -0xa80) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0xa80) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0xa80)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0xa80)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0xa80)" (( "(") (binary_expression "iVar2 + -0xa80" (identifier "iVar2") (+ "+") (number_literal "-0xa80")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "(**(code **)(iVar2 + -0xb14))(iVar12);" (call_expression "(**(code **)(iVar2 + -0xb14))(iVar12)" (parenthesized_expression "(**(code **)(iVar2 + -0xb14))" (( "(") (pointer_expression "**(code **)(iVar2 + -0xb14)" (* "*") (pointer_expression "*(code **)(iVar2 + -0xb14)" (* "*") (cast_expression "(code **)(iVar2 + -0xb14)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + -0xb14)" (( "(") (binary_expression "iVar2 + -0xb14" (identifier "iVar2") (+ "+") (number_literal "-0xb14")) () ")"))))) () ")")) (argument_list "(iVar12)" (( "(") (identifier "iVar12") () ")"))) (; ";")) (return_statement "return iVar4;" (return "return") (identifier "iVar4") (; ";")) (} "}")))
(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (identifier)))) body: (compound_statement (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))))))))) arguments: (argument_list)))) (return_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 (call_expression function: (identifier) arguments: (argument_list (number_literal) (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) consequence: (compound_statement (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (return_statement (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: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (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: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (return_statement (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (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 (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (return_statement (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (number_literal) (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 (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (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 (call_expression function: (identifier) arguments: (argument_list (number_literal) (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: (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: (call_expression function: (parenthesized_expression (pointer_expression argument: (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))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (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 (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))))))) (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 (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (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: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (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: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))))) (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: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (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 (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (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)))) (return_statement (identifier)))))

/* WARNING: Removing unreachable block (ram,0x0007330c) */

int MASKED(uint param_1)

{
  int *piVar1;
  int iVar2;
  undefined4 uVar3;
  int iVar4;
  int *piVar5;
  uint uVar6;
  int iVar7;
  int iVar8;
  int *piVar9;
  int *piVar10;
  int iVar11;
  int iVar12;
  undefined *puVar13;
  code *pcVar14;
  
  puVar13 = PTR___stack_chk_guard_00190e24;
  iVar2 = *(int *)PTR___stack_chk_guard_00190e24;
  if (*(int *)(PTR_DAT_00190948 + -0xa98) == 0) {
    if (param_1 < 0x1e) {
                    /* WARNING: Could not emulate address calculation at 0x00072918 */
                    /* WARNING: Treating indirect jump as call */
      iVar2 = (*(code *)(&_gp_1 + *(int *)(PTR_s_o_page_from_root____pageno_INTEG_0019095c +
                                          param_1 * 4 + 0x34dc)))();
      return iVar2;
    }
    iVar12 = 1;
  }
  else {
    iVar12 = 0x15;
    sqlite3_log(0x15,PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6378,
                PTR_s_o_page_from_root____pageno_INTEG_0019095c + -0x6380,0x259ec,
                PTR_LAB_00190958 + 0x625c);
  }
  if (iVar2 == *(int *)puVar13) {
    return iVar12;
  }
  puVar13 = PTR___stack_chk_fail_00190df8;
  (*(code *)PTR___stack_chk_fail_00190df8)();
  iVar2 = *(int *)(puVar13 + 0x11dc10);
  if (*(int *)(iVar2 + -0xa98) != 0) {
    return 0;
  }
  iVar12 = (*(code *)(*(int *)(puVar13 + 0x11de70) + -0x5e88))();
  if (iVar12 != 0) {
    return iVar12;
  }
  if (*(int *)(iVar2 + -0xb74) == 0) {
    iVar12 = 0;
  }
  else {
    iVar12 = (**(code **)(iVar2 + -0xb24))(2);
    if (iVar12 != 0) {
      (**(code **)(iVar2 + -0xb1c))(iVar12);
    }
  }
  *(undefined4 *)(iVar2 + -0xa90) = 1;
  if (*(int *)(iVar2 + -0xa8c) == 0) {
    if (*(int *)(iVar2 + -0xb4c) == 0) {
      MASKED(4,*(int *)(puVar13 + 0x11dc10) + -0x21c4);
    }
    iVar8 = *(int *)(puVar13 + 0x11dc10);
    iVar4 = *(int *)(iVar2 + -0xb74);
    *(undefined4 *)(iVar8 + 0x1390) = 0;
    *(undefined4 *)(iVar8 + 0x1394) = 0;
    *(undefined4 *)(iVar8 + 0x1398) = 0;
    *(undefined4 *)(iVar8 + 0x139c) = 0;
    *(undefined4 *)(iVar8 + 0x13a0) = 0;
    *(undefined4 *)(iVar8 + 0x13a4) = 0;
    if (iVar4 == 0) {
      uVar3 = 0;
    }
    else {
      uVar3 = (**(code **)(iVar2 + -0xb24))(3);
    }
    iVar4 = *(int *)(iVar2 + -0xab0);
    *(undefined4 *)(iVar8 + 0x1390) = uVar3;
    if ((iVar4 == 0) || (*(int *)(iVar2 + -0xaac) < 0x200)) {
      *(undefined4 *)(iVar2 + -0xab0) = 0;
LAB_00072f48:
      *(undefined4 *)(iVar2 + -0xaac) = 0;
    }
    else if (*(int *)(iVar2 + -0xaa8) < 1) {
      *(undefined4 *)(iVar2 + -0xab0) = 0;
      goto LAB_00072f48;
    }
    iVar4 = (**(code **)(iVar2 + -0xb38))(*(undefined4 *)(iVar2 + -0xb30));
    if (iVar4 != 0) {
      *(undefined4 *)(iVar8 + 0x1390) = 0;
      *(undefined4 *)(iVar8 + 0x1394) = 0;
      *(undefined4 *)(iVar8 + 0x1398) = 0;
      *(undefined4 *)(iVar8 + 0x139c) = 0;
      *(undefined4 *)(iVar8 + 0x13a0) = 0;
      *(undefined4 *)(iVar8 + 0x13a4) = 0;
      if (iVar12 != 0) {
        (**(code **)(iVar2 + -0xb14))(iVar12);
      }
      return iVar4;
    }
  }
  *(undefined4 *)(iVar2 + -0xa8c) = 1;
  if ((*(int *)(iVar2 + -0xa80) == 0) && (*(int *)(iVar2 + -0xb74) != 0)) {
    iVar4 = (**(code **)(iVar2 + -0xb24))(1);
    *(int *)(iVar2 + -0xa80) = iVar4;
    if ((*(int *)(iVar2 + -0xb74) != 0) && (iVar4 == 0)) {
      if (iVar12 != 0) {
        (**(code **)(iVar2 + -0xb14))(iVar12);
      }
      return 7;
    }
  }
  *(int *)(iVar2 + -0xa84) = *(int *)(iVar2 + -0xa84) + 1;
  if (iVar12 != 0) {
    (**(code **)(iVar2 + -0xb14))(iVar12);
  }
  iVar4 = 0;
  if (*(int *)(iVar2 + -0xa80) == 0) {
    if (*(int *)(iVar2 + -0xa98) != 0) goto LAB_00072e7c;
LAB_00072e58:
    iVar8 = *(int *)(puVar13 + 0x11dc10);
    if (*(int *)(iVar2 + -0xa94) == 0) {
      pcVar14 = *(code **)(puVar13 + 0x11e020);
      *(undefined4 *)(iVar2 + -0xa94) = 1;
      (*pcVar14)(iVar8 + 0x1404,0,0x5c);
      pcVar14 = (code *)(*(int *)(puVar13 + 0x11de70) + -0x5d30);
      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x5f8,3);
      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x850,0xf);
      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x990,8);
      (*pcVar14)(*(int *)(puVar13 + 0x11dc10) + -0x580,0x3e);
      if (*(int *)(iVar2 + -0xa88) == 0) {
        pcVar14 = *(code **)(iVar2 + -0xb00);
        if (pcVar14 == (code *)0x0) {
          MASKED(0x12,*(int *)(puVar13 + 0x11dc10) + -0x2210);
          pcVar14 = *(code **)(iVar2 + -0xb00);
        }
        iVar4 = (*pcVar14)(*(undefined4 *)(iVar2 + -0xb04));
        if (iVar4 != 0) {
          *(undefined4 *)(iVar2 + -0xa94) = 0;
          goto LAB_00072e64;
        }
      }
      *(undefined4 *)(iVar2 + -0xa88) = 1;
      iVar4 = sqlite3_initialize();
      if ((iVar4 == 0) && (iVar4 = FUN_00069c84(10), iVar4 != 0)) {
        (**(code **)(puVar13 + 0x11dc34))(iVar4);
        iVar4 = sqlite3_os_init();
        if (iVar4 == 0) {
          iVar4 = sqlite3_vfs_find(0);
          uVar6 = *(uint *)(iVar4 + 4);
          iVar8 = *(int *)(puVar13 + 0x11dc10);
          if (uVar6 < 0x30) {
            uVar6 = 0x30;
          }
          *(int *)(iVar8 + 0x77c) = iVar4;
          *(uint *)(iVar8 + 0x76c) = uVar6;
          iVar4 = sqlite3_initialize();
          if ((iVar4 == 0) && (iVar4 = FUN_00069ba0(iVar8 + 0x768,0), iVar4 == 0)) {
            iVar8 = *(int *)(puVar13 + 0x11dc10);
            if (*(int *)(iVar8 + 0x1148) != 0) {
              piVar10 = *(int **)(iVar2 + -0xab0);
              if ((piVar10 == (int *)0x0) || (iVar11 = *(int *)(iVar2 + -0xaa8), iVar11 == 0)) {
                *(undefined4 *)(iVar8 + 0x1154) = 0;
                *(undefined4 *)(iVar8 + 0x1170) = 0;
                *(undefined4 *)(iVar8 + 0x1158) = 0;
                *(undefined4 *)(iVar8 + 0x115c) = 1;
                *(int **)(iVar8 + 0x1160) = piVar10;
                *(undefined4 *)(iVar8 + 0x116c) = 0;
                *(undefined4 *)(iVar8 + 0x1174) = 0;
                *(int **)(iVar8 + 0x1164) = piVar10;
              }
              else {
                uVar6 = *(uint *)(iVar2 + -0xaac);
                *(int *)(iVar8 + 0x1170) = iVar11;
                *(int *)(iVar8 + 0x1158) = iVar11;
                iVar7 = iVar11 + -1;
                uVar6 = uVar6 & 0xfffffff8;
                *(uint *)(iVar8 + 0x1154) = uVar6;
                if (iVar11 < 0x5b) {
                  *(int **)(iVar8 + 0x1160) = piVar10;
                  *(undefined4 *)(iVar8 + 0x1174) = 0;
                  *(int *)(iVar8 + 0x115c) = iVar11 / 10 + 1;
                }
                else {
                  *(int **)(iVar8 + 0x1160) = piVar10;
                  *(undefined4 *)(iVar8 + 0x1174) = 0;
                  *(undefined4 *)(iVar8 + 0x115c) = 10;
                }
                piVar1 = piVar10;
                piVar9 = (int *)0;
                do {
                  piVar5 = piVar1;
                  iVar7 = iVar7 + -1;
                  *piVar5 = (int)piVar9;
                  *(int **)(iVar8 + 0x116c) = piVar5;
                  piVar1 = (int *)((int)piVar5 + uVar6);
                  piVar9 = piVar5;
                } while (iVar7 != -1);
                *(int **)(iVar8 + 0x1164) = (int *)(iVar11 * uVar6 + (int)piVar10);
              }
            }
            *(undefined4 *)(iVar2 + -0xa94) = 0;
            *(undefined4 *)(iVar2 + -0xa98) = 1;
            goto LAB_00072e64;
          }
        }
        *(undefined4 *)(iVar2 + -0xa94) = 0;
      }
      else {
        iVar4 = 7;
        *(undefined4 *)(iVar2 + -0xa94) = 0;
      }
    }
  }
  else {
    (**(code **)(iVar2 + -0xb1c))();
    if (*(int *)(iVar2 + -0xa98) == 0) goto LAB_00072e58;
  }
LAB_00072e64:
  if (*(int *)(iVar2 + -0xa80) != 0) {
    (**(code **)(iVar2 + -0xb14))();
  }
LAB_00072e7c:
  if (iVar12 == 0) {
    iVar12 = *(int *)(iVar2 + -0xa84) + -1;
    *(int *)(iVar2 + -0xa84) = iVar12;
    if ((iVar12 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {
      (**(code **)(iVar2 + -0xb20))();
      *(undefined4 *)(iVar2 + -0xa80) = 0;
    }
    return iVar4;
  }
  (**(code **)(iVar2 + -0xb1c))(iVar12);
  iVar8 = *(int *)(iVar2 + -0xa84) + -1;
  *(int *)(iVar2 + -0xa84) = iVar8;
  if ((iVar8 < 1) && (*(int *)(iVar2 + -0xa80) != 0)) {
    (**(code **)(iVar2 + -0xb20))();
    *(undefined4 *)(iVar2 + -0xa80) = 0;
  }
  (**(code **)(iVar2 + -0xb14))(iVar12);
  return iVar4;
}

